Android控件及布局的使用大全_第1頁
Android控件及布局的使用大全_第2頁
Android控件及布局的使用大全_第3頁
Android控件及布局的使用大全_第4頁
Android控件及布局的使用大全_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、3Android 控件及布局的使用大全目錄第一章 Android 基礎 開發(fā)環(huán)境搭建 項目的目錄結構 程序 第二章布局 (Layout) 和菜單 (Menu)布局 上下文菜單選項菜單子菜單 第三章組件 對話框 (Dialog) 和通知 (Notification) 常用對話框的演示 各種提示效果的演示 第四章活動、服務、廣播、廣播接收器 演示 Activity 的基本用法 、Broadcast BroadcastReceive的演示控件鐘表(帶表盤) (電子表控件) 日期選擇控件) Time Picker (時間選擇控件)ToggleButton (雙狀態(tài)按鈕控件)EditText可編輯文本控

2、件)P rogressBar進度條控件)SeekBar可拖動的進度條控件)AutoCo mp leteTextView(自動完成的可編輯文本控件) MultiAutoCompleteTextViewZoomControls (放大/ 縮小按鈕控件) Include (整合控件) VideoView (視頻播放控件)WebView (瀏覽器控件)RatingBar (評分控件)Tab (選項卡控件)Spinner ( 下 拉 框 控 件 )46.47.4834516228.811161627273237.4945666870 .72 .7

3、44Chronometer (計時器控件) ScrollView (滾動條控件)TextSwitcherGallery (縮略圖瀏覽器控件)ImageSwitcherGridView (網(wǎng)格控件) ListViewExpandableList ( 支 持 展 開 / 收 縮 功 能 的 列 表 控 件 )88第一章 Android 基礎開發(fā)環(huán)境搭建1、安裝 JDK(JavaDevelopmentKit)2、安裝 AndroidSDK3、安裝 Eclipse4、打開 Eclipse ,并安裝其 Android 插件( ADT)打開菜單 "Help"->

4、;"InstallNewSoftware" ,在 "AvailabeSoftware" 中加 ,然后安裝ADT(AndroidDevelopmentTools) 5、新建 Android 項目"New"->AndroidProject, ProjectName- 項目名稱; BuildTarget- 編譯項目的 SD版本;AppI icatio nn ame- 程序名稱;P ackage name-包名;Min SDKVersion-程序所支持的最低 SDK版本代號(2對應,3對應,4 對應)6、運行 Android 項目打開菜

5、單 "Run"->"RunConfigurations"->Newlaunchconfiguration ,設 置啟動項目名稱,在 Android 選項卡中選擇啟動項目,在 Target 選項卡中設 置模擬器7、創(chuàng)建/使用模擬SD卡創(chuàng)建SD卡,運行類似如下命令:mksdcard-lsdcard512M模擬器中使用 SD卡,在項目配置的 Target選項卡的"AdditionalEmulator CommandLineOptions" 框中輸入類似如下參數(shù): -sdcard8、配置模擬器 運行類似如下命令androidcre

6、ateavd-nameandroid15-target2。或者直接在菜單 "Window"->"AndroidAVDManager" 中配置模擬器9、瀏覽模擬SD卡中的內(nèi)容調(diào)試程序,在DDM中選擇"FileExplorer",在其中的sdcard目錄下就是 模擬SD卡中的內(nèi)容10、查看日志 LogCatWindow->ShowView->Other->Android->LogCat 11、在模擬器中安裝/卸載apk安裝apk運行類似如下命令:;卸載 apk運行類似如下命令: adbuninstallpac

7、kagename (注:這里的參數(shù)是需要卸載的包名)12 、反編譯 Android 程序解壓apk文件,取出其中的文件,運行類似如下命令: (其意思是將出 來,并將反編譯后的代碼保存到指定的文本文件中)13、人品不好是出現(xiàn)的某些錯誤的解決辦法 如果出現(xiàn)類似如下的錯誤等 noclassfilesspecifiedConversiontoDalvikformatfailedwitherror1解決辦法: Project->Clean 出現(xiàn) AndroidSDKContentLoader60% (一直卡在 60%) 解決辦法:P roject->去掉BuildAutomatically

8、前面的勾14、查看SDK源代碼 先想辦法搞到源代碼,如這個地址 ,然后將其解壓到SD根路徑下 的 sources 文件夾內(nèi)即可項目的目錄結構1 、 src- 用于放置源程序2、gen- 自動生成文件,用于引用資源文件(即 res 目錄下的數(shù)據(jù))3、assets- 用于放置原始文件, Android 不會對此目錄下的文件做任何處理, 這是其與 res 目錄不同的地方4、res/drawable- 用于放置圖片之類的資源; res/layout- 用于放置布局用 的 xml 文件; res/values- 用于放置一些常量數(shù)據(jù)5、程序的清單文件,相當于配置文件,配置 應 用 程 序 名 稱 、 圖

9、ActivityServiceReceiver 等程序1、 res/layout/代碼 <xmlversion=""encoding="utf-8"> <!-設置ID的方式:ID前加前綴,+id/string/引用資源文件內(nèi)字符串資源的方式:指定的資源名稱前加前綴, -><LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="f

10、ill_parent" android:id="+id/layout"><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="string/hello"/><TextView android:layout_width="fill_parent" android:layout_height="wrap_content&

11、quot; android:id="+id/txt"/></LinearLayout>2、 res/values/代碼<xmlversion=""encoding="utf-8"><resources><stringname="hello">layout 直接調(diào)用 values 中的字符串 </string> <stringname="hello2"> 編程方式調(diào)用 values 中的字符串 </string&g

12、t; <stringname="app_name">webabcd_hello</string></resources>3、 res/drawable 目錄下放置一個名為的圖片文件4、代碼<xmlversion=""encoding="utf-8"> <manifestandroid:versionCode="1"android:versionName=""> <applicationandroid:icon="draw

13、able/icon" android:label="string/app_name"> <activityandroid:name=".Main" android:label="string/app_name"> <intent-filter><action/><category/></intent-filter></activity></application> <uses-sdkandroid:minSdkVersion=&q

14、uot;3"/> </manifest>5、 代碼 package import import import import publicclassMainextendsActivity/*Calledwhentheactivityisfirstcreated.*/Override publicvoidonCreate(BundlesavedInstanceState) (savedInstanceState);上下文菜單選項菜單子菜單res/layout/代碼<xmlversion=""encoding="utf-8"&

15、gt;<LinearLayoutandroid:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent">android:id="+id/txt1"android:id="+id/txt2"<TextViewandroid:layout_width="fill_parent" android:layout_height="w

16、rap_content" android:text="string/hello_contextMenu"/> <TextViewandroid:layout_width="fill_parent" android:layout_height="wrap_content" android:text="string/hello_subMenu"/> </LinearLayout> res/values/代碼<xmlversion=""encoding=&

17、quot;utf-8"><resources><stringname="hello_contextMenu">HelloContextMenu</string> <stringname="hello_subMenu">HelloContextSubMenu</string> <stringname="app_name">webabcd_menu</string></resources>代碼 package import im

18、port import import import import import import import importOverride publicvoidonCreate(BundlesavedInstanceState) (savedInstanceState);how();returnfalse; etCheckable(true);第三章組件對話框 (Dialog) 和通知 (Notification)介紹Toast )的演示在 Android 中種對話框及各種通知效果的應用 常用對話框的使用,彈出式對話框、日期選擇對話框、時間選擇對話框、進 度條對話框 通知(出現(xiàn)在通知列表)和提示

19、性通知(常用對話框的演示res/layout/代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent"><TextViewandroid:id="+id/txtMsg"android:layout_width=&

20、quot;wrap_content" android:layout_height="wrap_content"></TextView><Buttonandroid:id="+id/btn1"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn2"android:layout_w

21、idth="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn3"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn4"android:layo

22、ut_width="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn5"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn6"android:

23、layout_width="wrap_content"android:layout_height="wrap_content"></Button></LinearLayout> res/layout/代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orientation="vertical"android:layout_width="fill_parent" andr

24、oid:layout_height="fill_parent"><TextViewandroid:text=" 我是一個 View" android:layout_width="wrap_content" android:layout_height="wrap_content"> </TextView> </LinearLayout> res/values/<xmlversion=""encoding="utf-8"> &

25、lt;resources><!-定義一個名為 ary 的 string 類型的數(shù)組 -><string-arrayname="ary"><item> 項目 1</item><item> 項目 2</item></string-array> </resources>代碼 package import import import import import import import import import import import import import impor

26、t import import import publicclassMainextendsActivity/*Calledwhentheactivityisfirstcreated.*/ OverridepublicvoidonCreate(BundlesavedInstanceState) (savedInstanceState);etTitle("彈出對話框 ").create();();etTitle(" 這是一個簡 單的彈出對話框的 Demo") .create();case1:etTitle(t 標 題 t)etCustomTitle(View

27、)etMessage(t t,newOnClickListener()etMultiChoiceItems(arg0,arg1,arg2)etNeutralButton(arg0,arg1)reate();信 息 ")etPositiveButton("確定."); returnprogress;case2:etTitle("內(nèi)容是一個dVfewt)();此對話框的returnnull;case3:各種提示效果的演示res/layout/代碼<xmlversion=""encoding="utf-8">

28、<LinearLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent"><Buttonandroid:id="+id/btn1"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button&

29、gt;<Buttonandroid:id="+id/btn2"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button><Buttonandroid:id="+id/btn3"android:layout_width="wrap_content" android:layout_height="wrap_content"></But

30、ton><Buttonandroid:id="+id/btn4"android:layout_width="wrap_content"android:layout_height="wrap_content"></Button></LinearLayout> res/layout/代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orientation="vertica

31、l"android:layout_width="fill_parent" android:layout_height="fill_parent"><TextViewandroid:id="+id/txtMsg" android:layout_width="wrap_content" android:layout_height="wrap_content"> </TextView> </LinearLayout>代碼 package import

32、 import import import import import import import import import import import import publicclassMainextendsActivity/*Calledwhentheactivityisfirstcreated.*/Override publicvoidonCreate(BundlesavedInstanceState) (savedInstanceState);how() 來實現(xiàn)提示性的通知效果 how(););how(); );/OverridepublicvoidonCreate(Bundles

33、avedInstanceState)(savedInstanceState);txt=(TextView) ("Activity1");Buttonbtn=(Button)(" 啟動另一個 Activity"); ()Override publicvoidonClick(Viewv)ain" android:label="string/app_name"> <intent-filter><action/><category/></intent-filter></ac

34、tivity><!-如果有需要用到的 Activity ,則都要在這里做相應的配置 -><activityandroid:name=".MyActivity"android:label="Activity 2"/></application> <uses-sdkandroid:minSdkVersion="3"/></manifest>/Override publicvoidonCreate(BundlesavedInstanceState) (savedInstanc

35、eState);、Broadcast、BroadcastReceiver的演示代碼 package import import import import import import import import import import import import/*和 bindService() 的區(qū)別 正常理解就好 使當前上下文對象(本例中就是 Activity )通過一個*startService()*startService()-*bindService()-ServiceConnection 對象邦定到指定的 Service 。這樣,如果上下文對象銷毀 了的話,那么其對應的 Ser

36、vice 也會被銷毀*/ publicclassMainextendsActivityimplementsOnClickListenerprivateTextViewtxtMsg;Override publicvoidonCreate(BundlesavedInstanceState) (savedInstanceState);setTitle("android之 service");txtMsg=ain"android:label="string/app_name"><intent-filter><action/>

37、;<category/></intent-filter></activity><!-如果有需要用到的 service ,則都要在這里做相應的配置-><serviceandroid:name=".MyService"></service> <!-注冊一個 BroadcastReceiver 其 intent-filter為(用于接收系統(tǒng)啟動完畢的 Broadcast ) -><receiverandroid:name=".MyBootReceiver"> <

38、;intent-filter><action /> </intent-filter> </receiver> </application><!-接受系統(tǒng)啟動完畢的 Broadcast 的權限-><uses-permission/><uses-sdkandroid:minSdkVersion="3"/> </manifest>控件在 Android 中使用各種控件 (View)TextView- 文本顯示控件Button- 按鈕控件ImageButton- 圖片按鈕控件Ima

39、geView- 圖片顯示控件CheckBox- 復選框控件RadioButton- 單 選 框 控 件AnalogClock- 鐘表(帶表盤的那種)控件DigitalClock- 電子表控件文本顯示控件)的 Demo etText()+" 被選 代中碼");<xmlversion=""encoding="utf-8"><)L; inearLayout android:orientation="vertical"android:layout_width="fill_parent"

40、 android:layout_height="fill_parent"><!-鐘表(帶表盤ew -文本顯示控件 -><TextViewandroid:layout_width="fill_parent" android:layout_height="wrap_content" 代ndroid:id="+id/textView"/><xmlversion=""encoding="utf-8"><LinearLayout a<

41、;n/Ldinroeiadr:oLraieyonutat>tion="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent">代碼packa<g!e-AnalogClock- 鐘表(帶表盤的那種)控件i-m->port i<mApnoarltogClockandroid:id="+id/analogClock" iamnpdorortid:layout_width="wra

42、p_content" android:layout_height="wrap_content"> </AnalogClock> publicclass_TextViewextendsActivity </LinearOLavyeorruidt>eprotectedvoidonCreate(BundlesavedInstanceState)代碼 package importimport publicclass_AnalogClockextendsActivity how(); Override); protectedvoidonCrea

43、te(BundlesavedInstanceState) how(); ); 例圖:In elude (整合控件)代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent"><!-include- 整合控件,將指定的 layout 整

44、合進來 layout- 指定需要整合 layout-><includeandroid:id="+id/cell1"layout="layout/include_1"/> <includeandroid:id="+id/cell2" android:layout_width="fill_parent"layout="layout/include_2"/> </LinearLayout>代碼<xmlversion=""encodin

45、g="utf-8"> <TextView android:text="TextView01"android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>代碼<xmlversion=""encoding="utf-8"><TextView android:text="TextView02"android:

46、layout_width="wrap_content" android:layout_height="wrap_content"></TextView>代碼 package importimport publicclass_IncludeextendsActivityOverrideprotectedvoidonCreate(BundlesavedInstanceState)etIndicator("tab1")etIndicator("tab2",etIndicator("tab3&q

47、uot;).setContent(newIntent(this,);Spinner (下拉框控件)代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent"><TextViewandroid:layout_width="fi

48、ll_parent" android:layout_height="wrap_content" android:id="+id/textView"/><!-Spinner- 下拉框控件-><Spinnerandroid:id="+id/spinner" android:layout_width="fill_parent" android:layout_height="wrap_content"/> </LinearLayout>Values/代

49、碼<xmlversion=""encoding="utf-8"> <resources><string-arrayname="colors"><item>red</item> <item>blue</item> e<titTeemx>t(g)r;een</item> <item>yellow</item> <item>black</item> </string-array&g

50、t; </resources>代碼 packageimport import import import import import import );OverridepublicvoidonNothingSelected(AdapterView<>arg0)publicclass_SpinnerextendsActivityChrSSOUffiOffi控tavedInstanceState)代碼<xmlversion=""encoding="utf-8"><LinearLayout android:orient

51、ation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent"><!-Chronometer- 計時器控件-><Chronometerandroid:id="+id/chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content"/><Buttonandroid:id="+id/btnStart"android:layout_width="wrap_content&

溫馨提示

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

評論

0/150

提交評論