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

下載本文檔

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

文檔簡介

Android布局

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

Service不可見的組件在后臺運行為其他組件提供后臺服務(wù)監(jiān)控其他組建的運行狀態(tài)后臺播放音樂ContentProvider幫助不同的應(yīng)用程序間交換數(shù)據(jù)比如你的程序中需要用到通信錄里的數(shù)據(jù),而通訊錄不是你的程序所有的,甚至你也可以獲得移動QQ中的好友列表用戶要繼承自ContentProvider,實現(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)會發(fā)送收到短信的廣播之后該怎么做,親,你懂的怎么實現(xiàn)?繼承BroadcastReceiver類重寫onReceive()注冊A。代碼中Context.registReceiver()B在AndroidManifest.xml中用<receiver>標簽Intent和IntentFilterActivityServiceBroadcastReceiver之間通信的載體很重要,后面詳細介紹View組件View相當(dāng)于是一張空白的畫布,你可以在上面繪制任何圖形繼承自View類重寫其中的onDraw方法Canvas類Paint類例題--繪制圖形例題--雨滴效果實現(xiàn)關(guān)鍵代碼---Touch事件view.setOnTouchListener(new

OnTouchListener(){ //添加Touch事件

publicboolean

onTouch(Viewv,MotionEventevent){

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

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

//將雨滴添加到渲染隊列中

view.push(d); returntrue;

}});protected

void

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

d.draw(canvas,paint);

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

it.remove();}}布局在Activity中放置各種控件需要使用布局組件布局組件是ViewGroup的子類,而ViewGroup是View的子類布局支持嵌套線性布局LinearLayout線性布局會將其中的控件一個接一個排列,可以橫排也可豎排xml屬性android:orientation對應(yīng)的方法setOrientation(int)值horizontal水平排列vertical垂直默認值android:gravity方法setGravity(int)組件的對齊方式屬性: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中添加控件,則這個控件將占一行。也可添加TableRow表格行,再往TableRow中添加控件,則一個控件占一列Shrinkable:某列被收縮,以保證表格能完全填充父容器的寬度Stretchable:某列被拉伸Collapsed:某列被隱藏例題--TableLayout幀布局--FrameLayout為每個加入其中的組件創(chuàng)建單獨的幀看上去像是組件疊加到一起相對布局--RelativeLayout控件的位置總是相對父容器或兄弟控件的如果A控件的位置是相對B控件的,那B控件要先定義每個控件使用LayoutParams規(guī)定的參數(shù)來定義相對位置LayoutParams的參數(shù)一類的值為true和false;另一類是其他控件的ID相對參數(shù)boolean型android:layout_alignParentBottom

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

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

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

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

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

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論