Hong Kong Adobe Flash platform developer (Flex, AIR and Flash)
Flex FAQ #6: Layout 秘技 Part 1
好多時候寫 Flex application 有大部份時間都係用o係 UI layout
雖然 Flex 既 UI layout 已經好易寫~ 但係有時想做到心目中既效果唔係咁易
舉個例我地想整一個 shopping cart list
我地會用 List + itemRenderer
itemRenderer 既 content 多數係 Label + Button
通常我地都會將 Label 放埋一邊~ Button 放另一邊~ 好似咁…

A List with Label and Button itemRenderer
但係有時總會出現一 d item o既名太長…
結果令到 button distort 左~

Too long label resulting distorted button
解決方法係利用 Label o既 truncateToFit
而用 truncateToFit o既時候一定要 define minWidth 或者 maxWidth
直覺上當然係用 maxWidth 啦~
計法就係:
maxWidth = itemRenderer width – Button width – horizontalGap
但係呢種做法首先非常煩~ 而且容易錯
再諗下如果 Button width 轉咁點算呢…
重新計過…
當然可以用 data binding 解決… 但係你諗下咁樣做 d code 係幾咁長…
咁有無終極方法呢?
有… 但係唔容易明… 竟然係用 minWidth
<mx:itemRenderer>
<mx:Component>
<mx:HBox>
<mx:Label width="100%" minWidth="0" text="{data.label}" truncateToFit="true" />
<mx:Button label="{outerDocument._button_label}" />
</mx:HBox>
</mx:Component>
</mx:itemRenderer>
後來同 Way discuss 之後諗諗下都有道理
因為 truncateToFit 先決係 minWidth 或者 maxWidth 要 set
如果 set minWidth = 0 其實無影響 layout 但係會開著 truncateToFit
然後 set width = 100% 就可以解決…
總之有時寫 Flex UI 要寫得好~
個腦係要 Flex-ible 一 d….
English title: Layout 101 Part 1
Related posts:
| Print article | This entry was posted by Vicker on August 2, 2008 at 1:42 am, and is filed under Flex, Flex FAQ. Follow any responses to this post through RSS 2.0. You can leave a response or trackback from your own site. |
No comments yet.
You must be logged in to post a comment.
No trackbacks yet.
Flex FAQ #10: Flex 4 有幾多個 namespace
about 1 month ago - No comments
知道點解要用 Spark 之後當然要實戰下啦
首先寫返個 Hello Spark application 先
以下o係 main application o既 source code
* 太簡單喇~ 無 build application 放上黎~ 抱歉
<?xml version="1.0" encoding="utf-8"?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<s:Label text="Hello Spark!" />
</s:Application>
唔太複雜吧~ 不過都幾多野唔同~ 首先當然係 namespace 啦
Flex Builder 3 (FB3) 寫 Flex 3 app 時o既 namespace 真係簡單到不得了
xmlns:mx="http://www.adobe.com/2006/mxml"
一個 mx 走天涯~
一個已經包括左:
- language (Array, uint, Number, Object etc…) 同埋
- Halo components (Button, VBox, DataGrid etc…)
FB4 寫 Flex 3 More >
Flex FAQ #9: 點解要 Spark
about 1 month ago - No comments
認識 Spark 之前先要講下 Halo
Halo 係 Flex 3 o既主要骨格
由最 base o既 application (mx:Application)
去到 layout properties (horizontalAlign, padding)
再去到 UI control (mx:Button, mx:TextInput) 都係 Halo o既範圍
而 Spark 就係 Flex 4 o既主要骨格
好地地用緊 Halo 點解又要 Spark 呢?
用得 Flex 比較深入o既 developer 或者 designer… 又或者 dezeloper 都會發現 Halo 有幾個比較大o既問題
1) Skinning Skinning and Skinning
Halo control 要做 skin 係非常痛苦架
一係就只係用 CSS 做 d 好似無做過咁o既 styling
一係就用 More >
Flex 4 重新上路
about 2 months ago - No comments
近期因為要寫幾個比較細既 Flex application
所以借機會用下 Flash Builder 4 寫 Flex 4 apps
Flex 4 最大最大既改變當然係 Spark framework
黎緊我會將寫 Flex 4 o既一 d 心得同大家分享下
大家亦唔需要太擔心 Flex 4 o既 syntax 會再變
因為 Flex 4 o既 SDK 已經 freeze 左
除左 bug fix 同埋 font embedding 之外~ 其他都應該唔會再變
大家可以放心去用喇~!
首先大家要 Flex 4 app 當然要用最新o既 compiler 啦
大家可以用 Flex 4 o既 SDK 又或者 Adobe Flash Builder 4 beta 2
Adobe More >
Flex FAQ #8: Font Embedding 全集
about 11 months ago - No comments
尋日要幫一個 application 做 font embedding
主要係想 embed 楷書
其實 font embedding 本身並唔係一件難事
因為 Flex 本身已經 support~
但係 embed 得黎又要控制好 file size 就唔簡單~!
至於楷書o既問題就更加多…
應該 specific d 講… 係 Microsoft o既標楷體o既問題更加多…
由淺入深~
1) Flex 直接 Embed font
方法主要有兩種
1A) Flex CSS refer local font
@font-face
{
src: local("標楷體");
font-family: "KaiShu";
}
o係 CSS 裡面 declare font-face
然後 source 利用 local 指住個字體名
最後 declare 一個 font family 名~ (呢個隨意就得)
呢度最 tricky 係個字體名… 特別係 Mac 機再加埋中文字…
經常攪到 Flex More >
Adobe MAX SF day 3
about 1 year ago - No comments
最後一日 MAX
今年有 d 唔同~
Sneak peak session 同 General session 逼埋o係同一日
第三日變左只係得堂上~
其中一堂講 Flash player 10 最新既 text engine 同 text layout framework
Text layout framework 可以話係現有 text controls o既加強版
可以 support 到更加多o既文字效果
- multiple column
(重點係 support 自動換 column
仲有 multiple column selection
仲可以 self define irregular shape columns)
- support 打直寫某 d 字~ 例如中文同日文
(大家以後可以唔駛靠 enter 靠行黎打中文喇)
詳細可以參考 Adobe Labs
http://labs.adobe.com/technologies/textlayout/
其他時間就同 Way 作最後衝刺
Adobe MAX 有個傳統
就係要行攤位儲印仔換禮物
外國人比較得意… 佢地會直接行去人地個檔度要人印… More >
Adobe MAX SF day 2
about 1 year ago - No comments
(抱歉… 太忙喇… 遲左好多先出 post…)
第二日又黎喇~ 精神都算唔錯~
今朝o係 marriot 食早餐
原本諗住會同會場的有 difference
但係都係食o個 d 野…
生果… 硬飽… 奶… 茶… 果汁…
比較好o既係果汁係樽裝~ 可以拎走飲~ 仲要係 tropicana~ 正
朝早上 Flex testing o既 session
之前寫 Flex application 都比較少考慮 testing
呢個 session 對我黎講都幾重要~
不過上完之後就會發覺 testing 唔應該係事後先去做…
而係要由 Day 1 開始每寫一 part 就要寫返相對應o既 testing module…
基本上工作量係 double 或者 triple~ 因為除左 unit test 仲有 function test, etc…
講真… 有幾多 company 會考慮到同埋 afford 得起呢…
下一個 app… 如果我有時間的話我都想認真的做一次…
跟住就係 General More >
Adobe MAX SF day 1
about 1 year ago - No comments
MAX 終於開始~
去到 Moscone 就見到 Kai~
佢同佢太太一齊去 MAX~ 真係開心
之後即刻上二樓食早餐
同之前一樣… 硬飽… 果汁… 咖啡… 奶…
Somehow 我總係覺得唔會夠飽…
食飽見未夠鐘就去左 community lounge
一入到去就見到熟識既面孔~
John, Sumi, Craig 同 JD 都o係到
總係覺得見到佢地就 = 見到 Adobe community~ 哈哈
打完招呼傾左一陣就要趕去聽野
第一場係 Flex testing~ 都 ok~
之後就係精采o既 general session~!
一如以往~ 未入到門就聽到好激昂o既音樂~!
一入到去真係好震撼~ 3 個 main screen 加兩組 side screen
main screen 係山峰藍天白雲~ 一堆 Adobe product logos o係天度飛~ 好型~
跟住所有 screen 會好似老虎機咁轉 d product logos
然後中間加插 30onMAX o既 video~
好彩無拍者… 唔係比人 More >
Adobe MAX SF pre day 2
about 1 year ago - No comments
一朝早就要起身
o係 westin 望出城中心
感覺其實同旺角差唔多~
MAX 前夕行程非常緊密
首先一朝早要去會場做 registration
San Francisco 朝早都幾涼爽~ 唔算凍
行左一陣穿過藝術公園離遠就已經見到好大個 MAX 字~ 真係型到爆
(回想起上次 Las Vegas 去會場都要 45 分鐘… 今次真係舒服好多~~!)
入到會場就見到好大o既 banner
Banner 其實就係 MAX NA o既 web page o既 theme
不過唔知點解睇落 d 色好唔自然… 好似偏紅左 d…
(大家睇落會有 d 怪~ 因為係小弟自製o既 panorama~ 多多包涵)
做完 registration 上二樓即刻上網報平安~
pre event d wireless 真係好快… 之後就…
跟住就發現好吸引o既 MAX Store 已經開左~!!!
結果 event 未開始就已經滿載而歸
有 MAX 熊~ 風褸~ mouse pad~ 筆~ BB 衫等等
有 More >
Adobe MAX SF pre day 1
about 1 year ago - No comments
期待已久既 trip 終於都到左
Adobe MAX 2008 San Francisco
2 年之前去 MAX Las Vegas 見識到好多野
特別係學左 Flex…
可以話係完全改變左自己既 programming path
今年都希望可以再進一步深造下~
當然啦~ 去之前大約都估到今次 MAX focus point 會係 Thermo
一早去到機場~ 同之前一樣搭機鐵~
其實都諗左好耐搭唔搭巴士~ 但係最後都係機鐵算… 最緊要快
到左機場會合阿 Way 然後去左 2 號大樓食餃子~
$40 有麵有餃 (8隻) 真係好抵~!!
不過成個機場o既冷清程度真係有 d 害怕
d 餐廳阿姐每日都唔知點過日子…
上到飛機見到個全新o既 Cathay Pacific shell seat 的確… 的確有 d 呆…
乜個位咁樣衰o既… 再一次證明相係信唔過架…
不過~ 坐落的確係好舒服~ 唔會好似西北 d 機咁逼到爆
但係好坐唔等如我想坐耐 d… 就o係準備飛走o既一刻
Captain 竟然話架機有 fuel leakage 要折返…
Fuel leakage… 聽落都幾恐怖… More >
Yahoo! 立法會選舉 interactive Flash banner
about 1 year ago - No comments
幾個月之前透過 blog 識到一位 designer Bryan
(哈哈~ blog 的確有佢 networking 既用途~
就算你幾個月唔 update 都好 =.=||)
Bryan 想我幫佢手為 Yahoo! 香港既立法會選舉網頁寫一個 Flash 既 interactive banner
一聽到 Yahoo! 就二話不說即刻應承~
相信一定係好好既 experience~
(結果… 唔… 原來係咁… 真係估唔到…)
Anyway… 講返個 banner
Banner 裡面其中一個 function 係要將一 d avatars randomly placed in 一個 specified area
起初我只係用簡單既切餅方法將一個長方形切成等份
然後 randomly place d avatar 入 d 餅入面…
好明顯… 結果好生硬…
之後嘗試唔用餅~ 直接做 random placement
然後每一次 place 既時候都 check hit area~ if More >






