0

我正在創建一個UI元素庫,並且我希望圖形是自定義的。起初,我要用代碼來繪製所有東西,並採用諸如「background-base-color」,「background-gradient-color」等屬性。我擔心用戶需要修改太多的屬性,並且可能會困惑了。我最終談到了使用外部圖形,比如button_top_left_over.png等等。現在我來回走動了。我希望人們能夠輕鬆地更改皮膚,所以我的選擇是,讓他們創建外部圖形庫,或讓他們更新將寫入XML的前端的屬性,例如background-base-color,background-base -highlight等。任何人都有這方面的經驗,並可以提供建議?Actionscript 3 - 生成用戶創建的UI組件

+0

我有時遇到同樣的問題,並沒有找到明確的答案。這實際上取決於項目。對於真正的定製圖形,我從設計器appart中獲取PSD資源,並在Flash中正確命名它們並導出一個swc,然後在ActionScript中使用顏色轉換/濾鏡來更改需要更改的任何需要,但是,這取決於關於你的項目的性質。我看到了這一點,但沒有時間查看它:http://code.google.com/p/flash-camouflage/ –

回答

0
  1. 您可以通過給定的單色「猜測」漸變,它應該適合大多數情況。這是一個算法:ColorUtil.as

  2. 自定義組件是一個常見問題。用戶不需要深入實施,但我們希望獲得最大的靈活性。爲此,我創建了一個CSS框架:Jakute Styling Engine。使用Jakute,你可以使用狀態來設置你的組件。

,而不用聲明萬噸性質的每個狀態的:

Button top_left_over: red.png 
Button top_left_down: blue.png 
Button top_left_disabled_over: grey.png 

隨着Jakute你可以指定有狀態的規則:

Button:over top_left: red.png 
Button:down top_left: blue.png 
Button:disabled:over top_left: blue.png 

在這種情況下,用戶只需要知道名單按鈕狀態和單個屬性「top_left」。樣式可以從外部樣式表加載或直接設置到組件。

最後,下面是一個示例,向您展示如何創建一個有狀態的可修改組件:States Example。即使你沒有計劃加入Jakute,你也可以瞭解其他人如何創建這些組件。 :-)