Android開發(fā)5個(gè)小常識:設(shè)置按鍵效果等
記載你或許想要了解的關(guān)于android的一些小知識:
1.為按鈕設(shè)置簡單的按鍵效果。
比如,在drawable文件夾中創(chuàng)建camera.xml,內(nèi)容如下:
- <selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:drawable="@drawable/camera_press" android:state_pressed="true"/>
- <item android:drawable="@drawable/camera_press" android:state_focused="true"/>
- <item android:drawable="@drawable/camera_normal" />
- </selector>
代表觸碰到及按下時(shí)圖片為camera_press,常態(tài)下圖片為camera_normal。
然后在layout布局文件中這樣寫即可:
- <TextView
- android:id="@+id/camera"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:background="@drawable/camera"
- />
2.國際化
見上圖文件目錄,strings.xml一份放在values-zh下,默認(rèn)的英文strings.xml放在values下。
圖片的默認(rèn)放在drawable-hdpi,包含中文的那幾張圖片放在drawable-zh-hdpi下。
這樣android系統(tǒng)會根據(jù)用戶選擇的語言自動(dòng)找到對應(yīng)的資源文件。
3.R文件不能自動(dòng)編譯
一般是因?yàn)閞es下的layout文件包含錯(cuò)誤,解決掉了就好了。
4.關(guān)于布局
個(gè)人認(rèn)為RelativeLayout還是很好用的,常用屬性如下:
android:gravity="center"代表組件的內(nèi)容水平并且垂直居中
android:layout_alignParentTop="true"代表處于上級標(biāo)簽,即父組件的頂部
android:layout_margin="5dp"代表與父組件上下左右有5dp的間距
android:padding="10dp"代表該組件包含的內(nèi)容與該組件本身上下左右有10dp的空隙
5.對話框
Builder builder = new AlertDialog.Builder(this)這種方式建立的dialog貌似不好調(diào)用自定義的取消按鈕,只有使用Dialog dialog = new Dialog(this)才能使用dialog.dismiss()方法來自定義取消按鈕。