今天參加 Android 高雄開發者社群聚會,聽到了一個好用的 method,當你在使用自己的 Custom View 時,常會碰到無法在 GUI Design 的介面中正常顯示的問題,並且會看到下面這段提示,
Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE
因為預覽時只會根據 xml layout 建立物件但不會初始化,所以 context 會是 null,這時只要在會用到 context 的地方運用這個 method,就可以正常顯示 UI 了。
2014/04/17
2014/04/11
Intent.createChooser()
2014/04/07
ListView android:overScrollMode
今天碰到一個 UI 設計是將 ListView 融入在背景裡,但當你把 ListView 之類的元件 scroll 到最頂或最底時,都會出現 Android 預設的藍色陰影提示,查了一下,如果想要移除這個區塊,可以在 XML 裡加上:
或是在程式中加上:
另外如果想要修改這塊陰影的顏色,可以參考 EdgeEffectOverride,利用 ContextWrapper 設定想要的主題配置。
2014/04/01
Abstract class 和 interface 的差異
關於這個問題,Google 就可以知道很多相關知識,但之前談到,要如何用自己的口語解釋給對方知道,於是我想了想,決定嘗試這樣解釋並紀錄一下(?)
Abstract class 就像是天賦,interface 就像是技能。
假設主角是黑魔法師,當初也是從法師學徒轉職而來的,所以會擁有魔力值、回復魔力值這些共通的基礎天賦,我們便可以先在 Abstract class 定義。
主角職業:
有了職業後,就可以來使用 interface 設計專屬技能了。
火系技能:
主角修習攻擊系法術:
之後魔王如果也被設定要會施放火系法術,那只要也實作 (implements) 這項介面,便可得到這項能力了 :P
Abstract class 就像是天賦,interface 就像是技能。
假設主角是黑魔法師,當初也是從法師學徒轉職而來的,所以會擁有魔力值、回復魔力值這些共通的基礎天賦,我們便可以先在 Abstract class 定義。
主角職業:
有了職業後,就可以來使用 interface 設計專屬技能了。
火系技能:
主角修習攻擊系法術:
之後魔王如果也被設定要會施放火系法術,那只要也實作 (implements) 這項介面,便可得到這項能力了 :P
Mac OS X 加入 adb 指令
前陣子不少同事換用 Mac OS X 來開發 Android,第一步通常會想做一件事,
就是將上列指令先寫入 .bashrc 裡,以便之後都能直接使用 adb 指令,但是重開 terminal 後,會發現設定並沒有被執行。原因可以參考:.bash_profile vs .bashrc,由此可知 Mac OS X 總是執行 .bash_profile,所以我們可以在它裡面補上
接下來就可以順利使用 adb 指令了 :D
就是將上列指令先寫入 .bashrc 裡,以便之後都能直接使用 adb 指令,但是重開 terminal 後,會發現設定並沒有被執行。原因可以參考:.bash_profile vs .bashrc,由此可知 Mac OS X 總是執行 .bash_profile,所以我們可以在它裡面補上
接下來就可以順利使用 adb 指令了 :D
訂閱:
文章 (Atom)