




已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 可以使某些資源文件或UI組件可重用按Ctrl+1鍵2、 定義一個文本編輯框,使用絕對定位android:layout_x=20dipandroid:layout_y=80dip3、控件位置3.1布局屬性詳解RelativeLayout用到的一些重要的屬性: 第一類:屬性值為true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInparent 相對于父元素完全居中 android:layout_alignParentBottom 貼緊父元素的下邊緣 android:layout_alignParentLeft 貼緊父元素的左邊緣 android:layout_alignParentRight 貼緊父元素的右邊緣 android:layout_alignParentTop 貼緊父元素的上邊緣 android:layout_alignWithParentIfMissing 如果對應(yīng)的兄弟元素找不到的話就以父元素做參照物 第二類:屬性值必須為id的引用名“id/id-name” android:layout_below 在某元素的下方 android:layout_above 在某元素的的上方 android:layout_toLeftOf 在某元素的左邊 android:layout_toRightOf 在某元素的右邊 android:layout_alignTop 本元素的上邊緣和某元素的的上邊緣對齊 android:layout_alignLeft 本元素的左邊緣和某元素的的左邊緣對齊 android:layout_alignBottom 本元素的下邊緣和某元素的的下邊緣對齊 android:layout_alignRight 本元素的右邊緣和某元素的的右邊緣對齊 第三類:屬性值為具體的像素值,如30dip,40px android:layout_marginBottom 離某元素底邊緣的距離 android:layout_marginLeft 離某元素左邊緣的距離 android:layout_marginRight 離某元素右邊緣的距離 android:layout_marginTop 離某元素上邊緣的距離android:gravityandroid:gravity屬性是對該view 內(nèi)容的限定比如一個button 上面的text. 你可以設(shè)置該text 在view的靠左,靠右等位置以button為例,android:gravity=right則button上面的文字靠右android:layout_gravityandroid:layout_gravity是用來設(shè)置該view相對與起父view 的位置比如一個button 在linearlayout里,你想把該button放在靠左、靠右等位置就可以通過該屬性設(shè)置以button為例,android:layout_gravity=right則button靠右android:layout_alignParentRight使當(dāng)前控件的右端和父控件的右端對齊。這里屬性值只能為true或false,默認(rèn)false。4、設(shè)置單元格內(nèi)的控件的形狀(可壓縮,可伸長,可隱藏等) android:shrinkColumns設(shè)置該列的所有單元格的寬度可以被收縮,以保證該表格能夠適應(yīng)父容器寬度android:stretchColumns設(shè)置該列的所有單元格的寬度可以被拉伸,以保證組件能完全填滿表格空余空間android:collapseColumns設(shè)置該列的所有單元格會被隱藏5、TextView屬性設(shè)置設(shè)置字體為30ptandroid:textSize=30pt設(shè)置中間省略android:singleLine=trueandroid:ellipsize=middle對郵件增加鏈接android:autoLink=emailandroid:autoLink=email測試密碼框android:password=true繪制一張圖片android:drawableLeft=drawable/icon6、EditText屬性設(shè)置1.當(dāng)前組件在得到焦點(diǎn)的時(shí)候,自動選取該組件內(nèi)的所有的文本內(nèi)容android:selectAllOnFocus=true2.當(dāng)前組件只能輸入數(shù)字android:phoneNumber=true3.當(dāng)前組件顯示的提示信息,被選中時(shí),內(nèi)容自動被清空android:hint=string/edtPhone7、按鈕以及屬性(Button)普通文字按鈕android:background=普通圖片按鈕按下時(shí)顯示不同圖片的按鈕(利用配置文件解決即,button_selector.xml,android:src=drawable/button_selector)Button_selector.xml:指定按鈕按鈕下時(shí)的圖片指定按鈕松開時(shí)的圖片:帶文字的圖片按鈕android:background=drawable/button_selectorandroid:text=string/btnImage8、單選按鈕和多選按鈕(RadioGroup、CheckBox)定義一組單選框定義一個單選框定義一個垂直的線性布局LinearLayoutandroid:layout_gravity=center_horizontal定義三個復(fù)選框9、帶類似開關(guān)式的按鈕(ToggleButton)定義一個ToggleButton按鈕:定義一個可以動態(tài)改變方向的線性布局:TestActivity:ToggleButtontb= (ToggleButton) findViewById(R.id.toggle);layout= (LinearLayout) findViewById(R.id.test);匿名內(nèi)部類:tb.setOnCheckedChangeListener(newOnCheckedChangeListener() public void onCheckedChanged(CompoundButton arg0, booleanarg1) if (arg1) layout.setOrientation(LinearLayout.HORIZONTAL); else layout.setOrientation(LinearLayout.VERTICAL););9、計(jì)時(shí)器組件(Chronometer)獲取計(jì)時(shí)器組件:finalChronometer chro = (Chronometer) findViewById(R.id.test);改變顯示的信息內(nèi)容,使用%s表示計(jì)時(shí)信息chro.setFormat(計(jì)時(shí)信息:%s);獲取“開始”按鈕Button btnStart = (Button) findViewById(R.id.start);獲取事件監(jiān)聽:btnStart.setOnClickListener(newOnClickListener() publicvoidonClick(View arg0) 設(shè)置開始計(jì)時(shí)時(shí)間:SystemClock系統(tǒng)時(shí)鐘類,elapsedRealtime方法是得到當(dāng)前系統(tǒng)的真實(shí)時(shí)間hro.setBase(SystemClock.elapsedRealtime();啟動計(jì)時(shí)器:chro.start(););時(shí)鐘改變一次監(jiān)聽一次:chro.setOnChronometerTickListener(newOnChronometerTickListener() publicvoidonChronometerTick(Chronometer ch) 如果從開始計(jì)時(shí)到現(xiàn)在超過了20s。(15 - 11 20 * 1000)Log.i(TestActivity, SystemClock.elapsedRealtime()+);if(SystemClock.elapsedRealtime() - ch.getBase() 20 * 1000) ch.stop(););定義模擬時(shí)鐘:定義數(shù)字時(shí)鐘:計(jì)時(shí)器:10、圖像視圖(ImageView)11、自動完成文本框(AutoCompleteTextView)指定輸入一個字符后進(jìn)行提示:設(shè)置出現(xiàn)在下拉菜單中的提示標(biāo)題:android:completionHint=string/title設(shè)置下拉菜單的寬度:android:dropDownWidth=100dp設(shè)置下拉菜單與文本框之間的水平偏移:android:dropDownHorizontalOffset=30dp設(shè)置用戶至少輸入幾個字符才會顯示提示:android:completionThreshold=2具體實(shí)現(xiàn)(Activity):1、定義字符串?dāng)?shù)組,作為提示的文本Stringbooks=newString active,activity,activity,apple,apple;2、獲取CompleteTextView上下文對象:AutoCompleteTextView actv = (AutoCompleteTextView) findViewById(R.id.auto);3、創(chuàng)建一個ArrayAdapter,封裝數(shù)據(jù)ArrayAdapter adapter =newArrayAdapter(this,android.R.layout.simple_dropdown_item_1line,books);simple_dropdown_item_1line:android自帶的配置文件。4、設(shè)置Adapteractv.setAdapter(adapter);12、下拉列表框(Spinner)定義了一個Spinner組件, 指定該顯示該Spinner組件的數(shù)組:使用數(shù)組資源設(shè)置該下拉列表框的列表項(xiàng)目:android:entries=array/booksbooks.xml:Java SEJava EEJava MELinux設(shè)置該列表選擇框的提示android:prompt=string/info13、時(shí)間和日期組件(DatePicker、TimePicker)定義一個DatePicker組件(日期:年,月,日):定義一個TimePicker組件(時(shí)間:含上下午):Activity:引用布局文件中的組件:findViewById();獲取當(dāng)前的年、月、日、小時(shí)、分鐘:Calendar c = Calendar.getInstance();year= c.get(Calendar.YEAR);month= c.get(Calendar.MONTH);day= c.get(Calendar.DAY_OF_MONTH);hour= c.get(Calendar.HOUR);minute= c.get(Calendar.MINUTE);用于顯示時(shí)間的方法(show):privatevoidshowDate(intyear,intmonth,intday,inthour,intminute) EditText show = (EditText) findViewById(R.id.show);show.setText(您的購買日期為:+ year +年+ month +月+ day +日+ hour+時(shí)+ minute +分);初始化DatePicker組件,初始化時(shí)指定監(jiān)聽器:datePicker.init(year,month,day,newOnDateChangedListener() publicvoidonDateChanged(DatePicker arg0,intyear,intmonth,intday) TestActivity.this.year= year;TestActivity.this.month= month;TestActivity.this.day= day;/顯示當(dāng)前日期、時(shí)間showDate(year, month, day,hour,minute); );為TimePicker指定監(jiān)聽器:timePicker.setOnTimeChangedListener(newOnTimeChangedListener() publicvoidonTimeChanged(TimePicker arg0,inthour,intminute) TestActivity.this.hour= hour;TestActivity.this.minute= minute;/顯示當(dāng)前日期、時(shí)間showDate(year,month,day, hour, minute); );14、水平進(jìn)度條(ProgressBar)定義一個水平進(jìn)度條Widget.ProgressBar.Horizontal:系統(tǒng)自帶布局方式。15、拖動條(SeekBar)定義一個拖動條,并改變它的滑塊外觀:Activity:1、findViewById2、事件監(jiān)聽器:seekBar.setOnSeekBarChangeListener(newOnSeekBarChangeListener() /當(dāng)拖動條的滑塊位置發(fā)生改變時(shí)觸發(fā)該方法publicvoidonProgressChanged(SeekBar arg0,intprogress,booleanfromUser) image.setAlpha(progress); /設(shè)置透明度publicvoidonStartTrackingTouch(SeekBar bar) publicvoidonStopTrackingTouch(SeekBar bar) );16、星級評分條(RatingBar)定義一個星級評分條:17、選項(xiàng)卡(TabHost)定義一個TabHost添加幾個布局:Activity:1、TabHost th = getTabHost();/獲取選項(xiàng)卡2、LayoutInflater.from(this).inflate(R.layout.main, th.getTabContentView(),true)/獲取布局文件3、在選項(xiàng)卡中添加已有的布局:th.addTab(th.newTabSpec(t1).setIndicator(軟件).setContent(R.id.tb1);th.addTab(th.newTabSpec(t2).setIndicator(動漫, getResources().getDrawable(R.drawable.ic_launcher).setContent(R.id.tb2);th.addTab(th.newTabSpec(t3).setIndicator(網(wǎng)絡(luò)).setContent(R.id.tb3);18、滾動條(ScrollView)1、創(chuàng)建2、創(chuàng)建3、中間是文本內(nèi)容,最后結(jié)束19、列表視圖(ListView)創(chuàng)建ListView(布局文件):Activity(方法2):findViewByIdString arr= 大師兄,fdasfd,dafa;ArrayAdapter arrayAdapter=newArrayAdapter(this,android.R.layout.simple_expandable_list_item_1,arr);lv.setAdapter(arrayAdapter);20、詳解simple_list_item1、simple_list_item_1:每一個列表項(xiàng)都是一個普通的TextView2、simple_list_item_2:每一個列表項(xiàng)都是一個普通的TextView,字體略大,TextView顯示標(biāo)題,TextView顯示內(nèi)容,因此需要兩組數(shù)據(jù),并且指定每組數(shù)據(jù)和兩個TextView的對應(yīng)關(guān)系3、simple_list_item_checked:每一個列表項(xiàng)都是一個已勾選的列表項(xiàng)4、simple_list_item_multiple_choice:每一個列表項(xiàng)都是帶多選項(xiàng)5、simple_list_item_single_choice:每一個列表項(xiàng)都是帶單選項(xiàng)21、列表(ListView)定義數(shù)組:String arr = 劉德華,張學(xué)友,黎明,郭富城;將數(shù)組中的內(nèi)容添加到列表中:ListHashMap data =newArrayListHashMap();for(inti = 0; i arr.length; i+) HashMap item =newHashMap();item.put(num1, i);item.put(value1, arri);ata.add(item);SimpleAdapter adapter =newSimpleAdapter(this,data,android.R.layout.simple_list_item_2,newStringnum1,value1,newintandroid.R.id.text1,android.R.id.text2);/設(shè)置該窗口顯示列表setListAdapter(adapter);形式二:1、創(chuàng)建數(shù)組,以及對應(yīng)圖標(biāo):privateStringnames=newString 唐伯虎,祝枝山,文征明,徐禎卿;privateintimageIds=newint R.drawable.icon,R.drawable.icon, R.drawable.icon, R.drawable.icon;privateStringvalues=newString1,2,3,4;2、重寫方法(onCreate(Bundle savedInstanceState))/創(chuàng)建一個List集合,List集合的元素是MapListMap listItems =newArrayListMap();for(int
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 護(hù)士資格證考試教育學(xué)基礎(chǔ)知識試題及答案
- 教師資格考試沖刺階段的試題及答案
- 教師資格筆試注意事項(xiàng)試題及答案
- 2024年信息系統(tǒng)項(xiàng)目管理師考試的復(fù)習(xí)策略試題及答案
- 建筑節(jié)能試題及答案
- 醫(yī)學(xué)知識考察趨勢與策略分析試題及答案
- 2024年西醫(yī)臨床考試知識結(jié)構(gòu)試題及答案
- 精細(xì)化備考系統(tǒng)架構(gòu)設(shè)計(jì)師考試的路徑試題及答案
- 中考試題及答案公布
- 健康管理師考試評估方式解讀試題及答案
- 深入貫徹學(xué)習(xí)2025年中央八項(xiàng)規(guī)定精神教育測試題及答案
- 2025年第三屆天揚(yáng)杯建筑業(yè)財(cái)稅知識競賽題庫附答案(601-700題)
- 勞務(wù)派遣勞務(wù)外包服務(wù)方案(技術(shù)方案)
- VDA6.3-2023版審核檢查表
- 煤田勘探鉆孔工程質(zhì)量標(biāo)準(zhǔn)
- 保溫工三級安全教育試題及答案
- (完整版)小學(xué)六年級數(shù)學(xué)知識點(diǎn)總復(fù)習(xí)資料
- 工業(yè)氣體充裝站安全管理規(guī)范
- 完整豎管降膜蒸發(fā)器的設(shè)計(jì)計(jì)算表
- 危巖崩塌落石穩(wěn)定性運(yùn)動計(jì)算總表(秦皇島資源環(huán)境勘察院)
- 注塑模具零件名稱統(tǒng)一標(biāo)準(zhǔn)
評論
0/150
提交評論