【原創】符合當前主流審美的原創Swing外觀 - BeautyEye L&F 正式發布
Posted on 2012-09-15 21:01 Jack Jiang 閱讀(3556) 評論(8) 編輯 收藏【前言】
傳統意義上講,Swing外觀定制相當困難。java1.5里發布的Synth技術在沒有可視化工具的前提下,依然不實用。曾今聽說SUN將針對Nimbus主題推出一款可視化設計工具,也沒有了下文。
一個稍復雜點的平面效果,受限于技術實現,Swing里也只能像網頁一樣——切圖拼合,但在Swing里這么做代價較大:需要精確切圖拼合、復雜的布局、未來定制很困難等等,顯然不實用。
直到接觸Android應用的UI改進,循著Android與標準java的淵源,認為NinePatch技術移殖到Swing中有很大的可能,順利的話有可能完全兼容。最后,一切正如所料。
接下來也就有了BeautyEye L&F這個項目的想法。
【關于 BeautyEye L&F】
前幾年,因對Swing的外觀定制有過幾次深入實踐,因而今年初有了利用NinePatch技術為Swing徹底改頭換面一次的想法。
起先沒想完全開發一套LNF,因為明知工作量很大(包括編碼,更為困難的是美感與視覺效果的確定),原本只想在Windows LNF的基礎上深入改進,以便站在前人的肩膀上快速收工。因熟門熟路,定制起來非常順手,隨著改造的深入,完全定制一套LNF的條件自然成形。
經眾多基礎ui素材的積累和借鑒,以及效果精細調整,各組件外觀逐漸達到預想的效果,也就萌發了要將此項目分享于互聯上,供需要的人使用。
過程中也難免存在些遺憾——有些更好的想法沒有付諸實施,原因在于LNF代碼的結構很多時候并不像Swing本身一樣優秀(更多時候是LNF創造者們有所保留,因為LNF代碼難保一勞永逸),且存在不少未公開API的調用,基于兼容性和未來維護難度的考慮,采取了中庸之道。
如有喜歡者將甚感欣慰,不喜者也權當技術交流,千萬勿噴。你可將其無償用于測試、學習、甚至商業用途。但禁止在未經授權的情況下用于商業用途等,還請尊重知識產權。
有興趣者可加【QQ群:259448663(已滿)、2群:217134536 】方便交流。
【項目托管地址】
地址:http://code.google.com/p/beautyeye/ ,內有詳盡開發指南及演示程序截圖等。
【效果預覽】
Part 1/2
Part 2/2
【題后話:關于編寫LNF定制系列文章的想法】
在該項目的目錄組織結構上,不同組件都單獨開列,目的是設想未來可針對各組件逐一編寫教學文章,但可以預見工作量也是不小,必竟個人業余時間有限,而且也不知道是否真有人需要,所以此事暫且放一邊,也希望有興趣者協同開發,從而為Swing LNF定制分享更多的經驗,惠及后來者。
作者:Jack Jiang (點擊作者姓名進入Github)
出處:http://www.52im.net/space-uid-1.html
交流:歡迎加入即時通訊開發交流群 215891622
討論:http://www.52im.net/
Jack Jiang同時是【原創Java
Swing外觀工程BeautyEye】和【輕量級移動端即時通訊框架MobileIMSDK】的作者,可前往下載交流。
本博文
歡迎轉載,轉載請注明出處(也可前往 我的52im.net 找到我)。