本文適合于對(duì)Android開(kāi)發(fā)有一定了解是嗜,正在Android入門(mén)中的小白
Github源碼:無(wú)
Let's Go Android!
1.可視化界面編輯工具(如下圖)
![](http://ww4.sinaimg.cn/large/006HJ39wgy1fehwhg73zkj30ks0mf76k.jpg)
- 通常這種方式制作出的界面都不具有很好的屏幕適配性狂票,而且難以勝任復(fù)雜界面的編寫(xiě)要求。
2.控件的寬和高都有三個(gè)可選值:wrap_content
零院,match_parent
和fill_parent
【match_parent = fill_parent(不推薦使用)
】瓶籽,當(dāng)然也可以自己指定一個(gè)固定的大小,比如android:layout_height="64dp"
洞慎,這樣有時(shí)會(huì)在屏幕適配方面出現(xiàn)問(wèn)題。
①android:gravity
指定文字的對(duì)齊方式嘿棘,可選值有:top劲腿、bottom、left鸟妙、right焦人、center
等,可以用“|”來(lái)指定多個(gè)值重父。
②EditText的android:maxLines
屬性指定了最大行數(shù)花椭,輸入內(nèi)容超過(guò)最大行數(shù)的時(shí)候,文字就會(huì)向上滾動(dòng)房午。
③ImageView矿辽,通過(guò)代碼動(dòng)態(tài)地更改其中的圖片:imageView.setImageResource(R.drawable.picture_name)
。
④AlertDialog的幾種常見(jiàn)形式以及自定義布局郭厌;
⑤ProgressDialog袋倔,若setCancelable()
中傳入了false
,表示不能通過(guò)返回鍵取消折柠,此時(shí)宾娜,必須在代碼中做好控制,調(diào)用dismiss()
方法來(lái)關(guān)閉對(duì)話框扇售。
⑥android:layout_margin
屬性指定了控件在上下左右方向上偏移的距離前塔,當(dāng)然可以使用android:layout_marginTop、android:layout_marginLeft
等屬性指定在某個(gè)方向上的偏移量承冰。
4.可見(jiàn)屬性
- 所有的Android控件都有可見(jiàn)屬性华弓,可選值有三種:
visible
(默認(rèn)值,可見(jiàn)的)巷懈,invisibl
(不可見(jiàn)该抒,但仍占據(jù)原來(lái)的位置和大小,可認(rèn)為透明了),gone
(不可見(jiàn)凑保,不占空間)冈爹。 - 可以使用代碼控制:
setVisibility()
,getVisibility()
方法欧引,可選值有三種:View.VISIBLE频伤,View.INVISIBLE,View.GONE
芝此。
5.四種布局
LinearLayout
①如果不指定android:orientation
屬性的值憋肖,則默認(rèn)是horizontal
。
②gravity用于指定文字在控件中的對(duì)齊方式婚苹;layout_gravity
用于指定控件在布局中的對(duì)齊方式岸更。
③android:layout_weight
屬性讓我們可以按照比例來(lái)定義控件的大小,注意:若按照比例定義寬度膊升,則相應(yīng)的控件的layout_width屬性設(shè)”0dp”怎炊;
若兩個(gè)控件指定了具體的寬度數(shù)值,另一個(gè)控件的layout_weight”1”廓译,則另一個(gè)控件自動(dòng)填滿剩余的空間评肆。RelativeLayout
①相對(duì)于父布局進(jìn)行定位
android:layout_alignParentLeft = “true/false”
android:layout_alignParentRight = “true/false”
android:layout_alignParentTop = “true/false”
android:layout_alignParentBottom = “true/false”
②相對(duì)于控件進(jìn)行定位
android:layout_above = “@id/..”
android:layout_below = “@id/..”
android:layout_toLeftOf = “@id/..”
android:layout_toRightOf = “@id/..”
當(dāng)一個(gè)控件去引用另一個(gè)控件的id的時(shí)候,該控件一定要定義在引用控件的后面非区,否則會(huì)出現(xiàn)找不到id的情況瓜挽。
③邊緣對(duì)齊
android:layout_alignRight= “@id/..” //表示和另一個(gè)控件的右邊緣對(duì)齊(以下類比)
android:layout_alignLeft= “@id/..”
android:layout_alignTop= “@id/..”
android:layout_alignBottom= “@id/..”
FrameLayout
TableLayout
①在TableLayout中每加入一個(gè)TableRow就表示在表格中添加了一行,TableRow中的控件是不能指定寬度的
②android:layout_span = “2”
讓某個(gè)控件占據(jù)兩列的空間(合并單元格)
③android:stretchColumns = “1”
征绸,在布局的頭屬性里定義久橙,表示:如果表格不能占滿整個(gè)屏幕,就將第二列進(jìn)行拉伸(計(jì)數(shù)從0開(kāi)始)
6.引入布局以及創(chuàng)建自定義控件歹垫,參照相應(yīng)的demo(以后會(huì)補(bǔ)充)
7.代碼中動(dòng)態(tài)銷(xiāo)毀當(dāng)前活動(dòng)
( (Activity) getContext() ).finish();
原創(chuàng)文章剥汤,轉(zhuǎn)載請(qǐng)注明出處:http://www.reibang.com/p/b00b0a1ea221