文庫(kù)發(fā)布:2android控件布局_第1頁(yè)
文庫(kù)發(fā)布:2android控件布局_第2頁(yè)
文庫(kù)發(fā)布:2android控件布局_第3頁(yè)
文庫(kù)發(fā)布:2android控件布局_第4頁(yè)
文庫(kù)發(fā)布:2android控件布局_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Android布局

第二章目錄Android的基本組件1視圖View組件2常用布局3Android的基本組件ActivityServiceBroadcastReceiveContentProviderIntent和IntentFilterActivityActivity是代表手機(jī)所顯示的一屏一個(gè)Android程序由多個(gè)Activity組成,也即一個(gè)Android程序由多屏內(nèi)容構(gòu)成相當(dāng)于一個(gè)展板本身沒有可視的內(nèi)容,你把畫(View)貼到展板上就可以展示出來(lái)setContentView(view)

Service不可見的組件在后臺(tái)運(yùn)行為其他組件提供后臺(tái)服務(wù)監(jiān)控其他組建的運(yùn)行狀態(tài)后臺(tái)播放音樂ContentProvider幫助不同的應(yīng)用程序間交換數(shù)據(jù)比如你的程序中需要用到通信錄里的數(shù)據(jù),而通訊錄不是你的程序所有的,甚至你也可以獲得移動(dòng)QQ中的好友列表用戶要繼承自ContentProvider,實(shí)現(xiàn)下面的抽象方法insert(URI,ContentValues)delete(URI,ContentValues)update(URI,ContentValues,String,String[])query(URI,String[],String,String[],String)使用ContentProvider暴露自己的數(shù)據(jù),反之使用ContentResolver訪問數(shù)據(jù)BroadcastReceiverBroadcastReceiver廣播消息監(jiān)聽器它能做什么?

比如收到短信后系統(tǒng)會(huì)發(fā)送收到短信的廣播之后該怎么做,親,你懂的怎么實(shí)現(xiàn)?繼承BroadcastReceiver類重寫onReceive()注冊(cè)A。代碼中Context.registReceiver()B在AndroidManifest.xml中用<receiver>標(biāo)簽Intent和IntentFilterActivityServiceBroadcastReceiver之間通信的載體很重要,后面詳細(xì)介紹View組件View相當(dāng)于是一張空白的畫布,你可以在上面繪制任何圖形繼承自View類重寫其中的onDraw方法Canvas類Paint類例題--繪制圖形例題--雨滴效果實(shí)現(xiàn)關(guān)鍵代碼---Touch事件view.setOnTouchListener(new

OnTouchListener(){ //添加Touch事件

publicboolean

onTouch(Viewv,MotionEventevent){

//每一次觸摸產(chǎn)生一個(gè)雨滴

Dropd=newDrop(event.getX(),event.getY());

//將雨滴添加到渲染隊(duì)列中

view.push(d); returntrue;

}});protected

void

onDraw(Canvascanvas){Paintpaint=newPaint();paint.setColor(Color.argb(255,68,221,255));//第一個(gè)參數(shù)是alpha值控制透明度paint.setStyle(Style.STROKE);paint.setAntiAlias(true);//抗鋸齒paint.setStrokeWidth(4);Iterator<Drop>it=drops.iterator();while(it.hasNext())//遍歷渲染隊(duì)列繪制每一個(gè)雨滴{Dropd=it.next();

d.draw(canvas,paint);

if(d.size>d.maxSize)//雨滴的大小達(dá)到最大值從隊(duì)列中移除

it.remove();}}布局在Activity中放置各種控件需要使用布局組件布局組件是ViewGroup的子類,而ViewGroup是View的子類布局支持嵌套線性布局LinearLayout線性布局會(huì)將其中的控件一個(gè)接一個(gè)排列,可以橫排也可豎排xml屬性android:orientation對(duì)應(yīng)的方法setOrientation(int)值horizontal水平排列vertical垂直默認(rèn)值android:gravity方法setGravity(int)組件的對(duì)齊方式屬性:top|bottom|left|right|center_certical|fill_vertical|center_horizontal|fill_horizontal|center|fill|clip_vertical|clip_horizontal例題--LinearLayout修改android:gravity=“l(fā)eft|center_vertical"bottom|center_horizontal修改android:orientation=horizontal表格布局TableLayout采用行列形式管理控件直接向TableLayout中添加控件,則這個(gè)控件將占一行。也可添加TableRow表格行,再往TableRow中添加控件,則一個(gè)控件占一列Shrinkable:某列被收縮,以保證表格能完全填充父容器的寬度Stretchable:某列被拉伸Collapsed:某列被隱藏例題--TableLayout幀布局--FrameLayout為每個(gè)加入其中的組件創(chuàng)建單獨(dú)的幀看上去像是組件疊加到一起相對(duì)布局--RelativeLayout控件的位置總是相對(duì)父容器或兄弟控件的如果A控件的位置是相對(duì)B控件的,那B控件要先定義每個(gè)控件使用LayoutParams規(guī)定的參數(shù)來(lái)定義相對(duì)位置LayoutParams的參數(shù)一類的值為true和false;另一類是其他控件的ID相對(duì)參數(shù)boolean型android:layout_alignParentBottom

如果該值為true,則將該控件的底部和父控件的底部對(duì)齊android:layout_alignParentLeft

如果該值為true,則將該控件的左邊與父控件的左邊對(duì)齊android:layout_alignParentRight

如果該值為true,則將該控件的右邊與父控件的右邊對(duì)齊android:layout_alignParentTop

如果該值為true,則將控件的頂部與父控件的頂部對(duì)齊android:layout_centerHorizontal

如果值為真,該控件將被至于水平方向的中央android:layout_centerInParent

如果值為真,該控件將被至于父控件水平方向和垂直方向的中央android:layout_centerVertical

如果值為真,該控件將被至于垂直方向的中央相對(duì)參數(shù)---ID值型android:layout_above將該控件的底部至于給定ID的控件之上android:layout_below將該控件的頂部至于給定ID的控件之下android:layout_toLeftOf將該控件的右邊緣和給定ID的控件的左邊緣對(duì)齊android:layout_toRightOf將該控件的左邊緣和給定ID的控件的右邊緣對(duì)齊android:layout_alignBaseline該控件的baseline和給定ID的控件的baseline對(duì)齊android:layout_alignBottom將該控件的底部邊緣與給定ID控件的底部邊緣android:layout_alignLeft將該控件的左邊緣與給定ID控件的左邊緣對(duì)齊android:layout_alignRight將該控件的右邊緣與給定ID控件的右邊緣對(duì)齊android:layout

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論