安卓開(kāi)發(fā)2-第二章-Android-UI組件_第1頁(yè)
安卓開(kāi)發(fā)2-第二章-Android-UI組件_第2頁(yè)
安卓開(kāi)發(fā)2-第二章-Android-UI組件_第3頁(yè)
安卓開(kāi)發(fā)2-第二章-Android-UI組件_第4頁(yè)
安卓開(kāi)發(fā)2-第二章-Android-UI組件_第5頁(yè)
已閱讀5頁(yè),還剩32頁(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界面開(kāi)發(fā)

Activity>布局、清單文件(AndroidManifest.xml)

2.1視圖組件與視圖容器

基本概念:控件、View(視圖)、ViewGroup(視圖容器)??丶茿ndroid

界面最基本的元素,每一個(gè)按鈕或文本框都是控件。View是所有控件的基類。

ViewGroup可以控制子控件的布局和顯示。

Android通過(guò)Java代碼定義控件并設(shè)置控件的屬性,通過(guò)XML文件控制控

件的布局和屬性。

2.2常用布局

布局可以用來(lái)管理控件的分布和大小。

2.2.1Android的六大基本布局

線性布局(LinearLayout)

相對(duì)布局(RelativeLayout)

表格布局TableLayout

層布局FrameLayout

絕對(duì)布局AbsoluteLayout

網(wǎng)格布局GridLayout

2.2.2線性布局LinearLayout

LinearLayout是一個(gè)視圖容器又稱線性布局,可以向其中添加組件。

水平方向線性排列android:orientation="horizontal"

垂直方向水平排列

Andorid:id組建標(biāo)簽中的id屬性值,以@開(kāi)頭,例如@+id/abc,可

在Java代碼中通過(guò)findViewByld中獲取。

android:id="@+id/iflytek_logo"

android:layout_width該組件的布局寬度

android:layout_height該組件的布局高度

可以設(shè)置3中取值方式

(1)matchparent:設(shè)置當(dāng)前View的大小盡可能和父控件的大小一致。

(2)wrapcontent設(shè)置當(dāng)前View的大小自適應(yīng)要顯示的內(nèi)容。

(3)固定值:設(shè)置檔期那View的尺寸為固定大小。

android:layout_width="matchparent"

android:layout_height="wrap_content”

案例代碼:

<?xmlversion=〃1.0〃encoding=〃utf8〃?>

<LinearLayout

pflns:android="zhttp://schemas,android,com/apk/res/android^

android:layout_width="matchparentz/_________________

android:layout_height=/zmatchparent/z

android:orientation二〃vertical〃

)

<Button

androidid=〃@+id/buttonl”

androidlayout_width="wrap_content”

androidlayout_height=z/wcjp_c()i)tem”

android:text="Button1”

/>

<Button

android:id=〃@+id/button2〃____________

android:layout_width=//wrap_content/,

android:layout_height二〃wrap_content

android:text=z/Button2/z

/>

<Button

android:id="@+id/button3"____________

____android:layout_width=,i

android:layout_height=〃wrap_content

android:text=〃Buitcm3"_______________

/廠

</LinearLayout>

android:Iayout_gravity和android:gravity屬性的區(qū)別

gravity控制組件的重心,也叫對(duì)齊方式,表示View在橫向或縱向的???/p>

位置。

(1)android:gravity:設(shè)置自身內(nèi)部元素的對(duì)齊方式。比如TextView,則設(shè)

置內(nèi)部文字的對(duì)齊方式。如果是ViewGroup組件如LinearLayout的話,則為設(shè)置

它內(nèi)部View組件的對(duì)齊方式。默認(rèn)值是左側(cè),比如Button設(shè)置gravit產(chǎn)“top”,

內(nèi)部的文字顯示在左上角。

案例代碼:

<Button

android:id="@+id/button1"

android:layout_width="200dp"

android:layout_height="wrap^content"

android:gravity="top"

android:text="Button1"

/>

BUTTON1

BUTT0N2

BUTTON3

這是一段話

center

right

bottom

center_horizontal

center_vertical

clip_horizontal

clip_vertical

end

fill

fill_horizontal

fill_vertical

left一

start

top

(2)android:layoutgravity設(shè)置自身相對(duì)于父容器的對(duì)齊方式。比如,一

個(gè)Button設(shè)置layoutgravity屬性,則表示這Button相對(duì)于父容器的對(duì)齊方式。

案例代碼:

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayout

xmlns:android="/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

android:background="#E8E8E8"

>

<Button

android:id="@+id/button1"

android:layout_width="wrap_content"

android:layout_height="wrapcontent"

android:layout_gravity="right"

android:text="Button1"

/>

<Button

android:id="@+id/button2"

android:layout_width="wrap_content"

android:layout_height="wrapcontent"

android:layout_gravity="center"

android:text="Button2"

/>

<Button

android:id="@+id/button3"

android:layout_width="wrap_content"

android:layout_height="wrapcontent"

android:text="Button3"/>

</LinearLayout>

效果圖

BUTT0N1

BUTT0N2

BUTT0N3

案例代碼:

學(xué)習(xí)LinearLayout的另一個(gè)重要屬性,android:layoutweight,該屬性允

許我們使用比例的方式來(lái)指定控件的大小。分配當(dāng)前控件在剩余空間的大小

<?xmlversion-1.0〃encoding=〃ulf8〃?>

<LinearLayout

xmlns:android=〃http://schemas,android,com/apk/res/android”

android:layout_width=,,match_parent/,_____________________________|

android:layout_height=〃matchparent”____________________________

android:orientation二〃horizonta]〃_______________________________I

)

<IiclitText

android:id="@+id/inputjnessage”|

android:layout_width=〃Odp〃|

android:layout_height="wrapcontent/'________________________|

android:1ayout_weight=〃1〃

android:hint=〃請(qǐng)輸入〃

7>

<Button

________android:id="@^id/sendl”____________

android:layout_width=,,Odpz,

________android:layout_height=〃wrap_content

android:layout_weight=,/1"

android:text^send^

/>

</LinearLayout>

將Button和EditText的android:layoutweight屬性都設(shè)置為1時(shí),EditText

和Button將在水平方向平分寬度。

更好的實(shí)現(xiàn)效果

案例代碼:

<?xmlversion="1.0〃encoding=//utf-8,z?>

<LinearLayout

xmlns:andi'oicl=//h〔tp:〃schemas,androicl.coin/pk/1'us/andiV)id〃

android:layout_width=〃niatchparent“______________________

android:layout_height="matchparentz,

android:orientation^^horizontalzz

>

<EditText

android:id=&+id/inputmessage

android:layout_width="Odp”

android:layout_height=,,\vrapcontent,?

________android:layout_weight=〃1〃

android:hint=〃請(qǐng)輸入,

—/)一

<Button

________android:id=〃@+id/sendl〃_____________

android:layout_width="wrapcontent”

________android:layout_height="wrapcontent

android:text二〃send”

/>

</LinearLayout>

Button占屏幕的寬度為wrap_content控件的大小剛好包住里面的內(nèi)容。

layoutweight屬相將平分剩余的屏幕寬度。

android:layoutmargin控制子組件周?chē)捻?yè)邊距(控件外部)

1.android:layout_margin=""/儆值示例"Odp”距離父控件

四個(gè)方向距離

2.android:layout_marginLeft=""〃取值示例"Odp"距離父

控件左間距

3.android:layout_marginTop=""/儆值示例"Odp"距離父

控件上間距

4.android:layout_marginRight=""〃取值示例"Odp"距離

父控件右間距

5.android:layout_marginBottom=""〃取值示例"Odp"距

離父控件下間距

android:padding在組件的四邊設(shè)置填充區(qū)域(控件內(nèi)部)

1.android:padding=/n,/度值示例"Odp"控件內(nèi)容(文本圖

片子控件等)距離控件四個(gè)方向邊界的距離

2.android:paddingLeft=""

3.android:paddingTop=""

4.android:paddingRight=""

5.android:paddingBottom=""

案例代碼:

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayout

xmlns:android="/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="horizontal"

>

<EditText

android:id="@+id/input_message"

android:layout_width="Odp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:hint="請(qǐng)輸入"

/>

<Button

android:id="@+id/send1"

android:layout_width="Odp"

android:layout_height="wrapcontent"

android:layout_weight="1"

android:paddingTop="Odp"

android:layout_marginRight="20dp"

android:text="send"

/>

</LinearLayout>

2.1.1RelativeLayout相對(duì)布局

對(duì)于有些界面,用線性布局實(shí)現(xiàn)比較麻煩,或使用線性布局嵌套層次太深,

可以考慮更靈活的想對(duì)布局。

android:layout_alignParentLeft=,ztruez,位于父布局左部

android:layout_alignParentTop=,,truez,位于父布局頂部

android:layout_centerInParent=,,truez,位于父布局中間

android:layout_alignParentRight=,,true/z位于父布局右部

android:layout_alignParentBottom=z,true,z位于父布局底部

案例代碼:

<?xmlversion=〃1.0〃encoding二

<RelativeLayout

xmlns:android="http://schemas,android,com/apk/res/android”

android:layout_width=,,match_parent”

android:layout_height=z/matchparent/z

>

<Button

android:id="@+id/sendl”_______________

android:layout_width=,/\vrapconlont”

android:layoutheight=,wiapconi.eni”

android:layout_alignParentLeft=/,true

android:layout_alignParentTop="1ru(?"

android:text=,zbuttonl”

/>

<Button

android:id="@+id/send2〃______________

android:layout_width=z/wrapcontent

android:layout_height=〃wrapcontent”________________________

android:1ayout_alignParentRight="true〃

android:layout_alignParentTop="true"_________________________

android:text=//button2z/

/>____________________________________________________

<Button

android:id="@+id/send3"______________________________________

android:1ayout_width=,zwi'apcontentz,

android:layout_height=)conlent/'_________________________

android:layout_centerInParent=zztrue,z

android:text=〃button3〃_______________________________________

/>

〈Button__________________________________________________________

android:id=〃@+id/send4〃

android:layout_width="wrapcontent”__________________________

android:1ayout_height=,/wrapcontent,z

android:layout_alignParentLeft=〃tru。"________________________________

android:layout_alignParentBottom=,true"

android:text二〃button4〃_______________________________________

/>

<Button

android:id=/z@+id/send5〃

android:layout_width=〃wrapcontent“_________________________

android:1ayout_height=,/wrapcontent^

android:layout_alignParentRight='-_______________________

android:1ayout_alignParentBottom="true"

android:text="button5/z

~~TT

</RelativeLayout>

案例代碼:

▼■8:00

studyAPP

BUTT0N1BUTTON1

BUTTONI

BUTT0N1BUTT0N1

《???/p>

android:layout_centerInParent=,,true/,設(shè)置當(dāng)前在父布局居中

android:layout_above=zz@id/send3,z表示一個(gè)控件在另一個(gè)控件的上方

android:layout_toLeftOf=,,@id/send3〃

表示一個(gè)控件在另一個(gè)控件的左側(cè)

android:layout_toRightOf=//@id/send3z,

表示一個(gè)控件在另一個(gè)控件的右側(cè)

android:layout_below=,z@id/send3〃

表示一個(gè)控件在另一個(gè)控件的下方

____<?xmlversion="I.0〃encoding="utf-8"?>________________________

<RelativeLayout

xmlns:anclroid=〃http://schemas,android,com/apk/res/android”

android:layout_width="matchparenl”__________________________

android:layout_height=z,match_parent”

<Button

android:id=〃@+id/send3〃

android:layout_width=z/wrap_content/z

android:layout_height="wrapcontenl〃

android:layout_centerInParent=z2lru£^

android:text="button1”

/>

<Button

android:id=〃@+id/sendl〃_______________

android:layout_width=/,wrapcontent^

android:layoutheight、-wrapconleni”

android:layout_above:=/,@id/sendS^

android:layout_toLeft0f=〃@id/send3〃

android:text="button1”

/>

<Button

android:id=〃@+id/send2〃

android:layout_width=//wrap_conteniz/

android:layout_height="wrapconleni〃

android:layout_above=/z@id/send3z/

android:layouttoRightOf="@id/send3”

android:text=,,button1”

/>

<Button

android:id=/z@+id/send4〃

android:layoutwidth="wrapconlonI”

android:layout_height=/zwrapcontent/z

android:layout_below="@id/send3〃___

android:1ayout_toLeftOf=ids(?nd3z,

android:text="buttonl”_________________

/>

<Button

android:id=〃。+id/send5〃

android:layout_width="wrapcontent”

android:layout_height=,/wrapconteni"

android:layout_below="@id/send3〃

android:layout_toRightOf=v@id/send3〃

android:text="bultonI”

</RelativeLayout>

2.1.2TextView

android:id="@+id/text」”給當(dāng)前控件定義唯一標(biāo)識(shí)符

android:layoutwidth指定控件的寬度,

match_parent意義相同,表示當(dāng)前控件大小與父布局相同,父布局大小決定

了當(dāng)前控件的大小;

wrapcontent讓當(dāng)前控件的大小剛好能包住里面的內(nèi)容,由控件內(nèi)容決定當(dāng)

前控件大小。

案例代碼:

<?xmlversion=〃1.0〃encoding=〃ulf8〃?>

<LinearLayout

xmlns:android=〃http://schemas,android,com/apk/res/android”

android:layout_width=,,matchjarent

android:layout_height=〃matchparent.”

android:orientation="vertical"

<TextView

________android:id="@+id/text_view〃__________

android:layout_width=z/\vrapcontent"

android:layoutheight="ikilchpareni,

android:text="ThisisTextView”

/>

</LinearLayout>

TextView默認(rèn)居左上角對(duì)齊

hisisTextView

知識(shí)回顧:

android:gravity指定內(nèi)部控件的對(duì)齊方式,可選值

top,bottom,left,right,center,也可用"|"可同時(shí)指定多個(gè)值,指定

"center”,效果等同于,center_vertica果center_horizontal表示文字在垂

直方和水平方向都居中

<?xmlversionF'l.0〃encoding=〃ulf-8〃?>

<LinearLayout

xmlns:android=〃http://schemas,android,com/apk/res/android”

android:orientation=/,vertical”

android:layout_width=〃maiientzz_________________________

android:layout_height=//matchparent,z>

〈TextView

android:id=〃@+id/text_\iew2〃

android:layout_width=〃match_parent〃

android:layout_height=,/\vrapcontentz,

android:gravity=〃center〃

android:text=,/ThiI'exlVi

/>

</LinearLayout>

案例代碼:

通過(guò)改變TextView的大小和顏色進(jìn)行修改。

andorid:textsize文字大小sp

android:textColor顏色

<?xmlversion="1.0〃encoding二

<LinearLayout____________________________________________

^^s:android="http://schemas,android,com/apk/res/android”___________

android:orientation="verticalz/__________________________________

android:layout_width=,,match_parentz/

android:layout_height=,,match_parent,,>

<TextView

android:id=〃@+id/text_view3〃

android:layout_width=z/match_parent/z

________android:1ayout_height=〃wrapcontent”________________________

android:gravity="center”

________android:textSize=〃24sp〃

android:textColor=,,#ff0000z,

android:text=/ThisisTexlView"

/>

</LinearLayout>

案例代碼:

文字+icon

android:drawableTop,drawableLeft,drawableRight,drawableBottom

<?xmlversion="1.0〃encoding=

<LinearLayout

xmlns:android=〃h11p://schemas,android,com/apk/res/android〃

android:orientation=〃vertical”_____________________________

android:layout_width=/,matchparent,z

android:layout_height=〃【natchparent”〉

<LinearLayout

android:layout_width=〃【natchparent”

android:layout_height=,/100dp,z

________android:background="@drawab1e/my_fragment_top._______

android:orientation=〃horizontai”

________>________________________________________________________

<TextView

_____________android:id=〃@+id/my_index_dongtai〃________________

android:layout_width=//Odp/,

android:layout_weight=〃l〃

android:layout_height=z/matchparent”

android:gravity="center〃

android:drawab1eTop="Sdrawab1emyFragmentorder"

_____________android:textSize=〃@dimen/text_size_defalutl〃_____

android:text=〃我的訂單〃

></TextView>

<TextView

android:layout_width二〃ldp〃

android:layout_height="/inatchparent"

android:background-z/#EODFEQz/

/>

<TextView

android:id=,z@+id/niyindexheart”

android:layout_width=〃Odp〃

android:layout_weight=/z1"

android:layout_height="matchparent”

android:gravity="center”

_____________android:drawableTop=〃@drawable/my_fragmenljrate”

android:text=〃心率“

_____________android:textSize=〃@dimen/1ext_size_defalut1"_____

></TextView>

_________〈TextView

android:layout_width=,/Idp"

android:layout_height=〃niatchparent”

android:background=〃#E0DFB0〃

/>

<TextView

__________android:id=〃@+id/my_index_sports”__________________

android:layout_width=,/Odpz,

android:layout_weight=T

android:layout_height=zzmatchparent

android:gravity="center”

android:drawableTop=,"fragmentsports"

android:text=〃運(yùn)動(dòng)”

android:textSize=/z@dimen/textsizedefalutl,z

></TextView>

</LinearLayout>

〈TextView

androici:id=〃("+i(1niyindoxhealth”

android:layout_width="matchparent”

android:layout_height="wrapcontentzz

android:layoutjnarginTop="@dimen/lillle_space〃

android:text—健康檔案”

_____android:textSize="@dimen/text_size_defalutl"___________

android:gravity二〃centervertical"

_____android:padding="@dimen/normal_space“__________________

android:drawableLeft=z,@drawable/my_fragment_archivesz/

android:drawab1eRight=〃@drawab1e/arrownorma1”

android:background=〃#ffffff”

_____android:drawablePadding=〃@din】en/normalspace”__________

/>

<TextView

_____android:id=〃@+id/my_index_faniily〃_______________________

android:layout_width=//matchparent"

android:layout_height="wrapcontent〃

android:layout_marginTop=,/@climen1ittle_spacez,

android:text=〃我的家人〃

android:textSize=/,@dinien/text_size_defalut1〃

_____android:gravity=〃center_vertical〃_______________________

anciroicl:padding=in;

_____android:drawableLeft=〃@drawab1e/r「amily”

android:drawab1eRight="("itrrow_normalz,

android:background=〃#ffffff〃

android:drawablePadding=z,@'dinien/iioriiialspacp,z

/>

<TextView

_____android:id="@+id/my_index_question.____________________

android:layout_width=z/matchparent”

android:layout_height="wrapcontent”________________________

android:layout_marginTop=/z?climcnni111ospacez,

android:text=〃我的問(wèn)答〃______________________________________

android:textSize=,z@climentextsizedefeilut1〃

android:gravity="centejvertical”____________________________

android:padding=〃@dimennorma1spac

________android:drawableLeft=〃@drawable/my_fragm6ntquestion”________

android:drawableRight=z,@drawciblearrownormalzz

android:background二_________________________________

android:drawab1ePadding="@dimen/norma1space〃

/>一______________________

<TextView

android:id=〃@+id/my_index_tel〃_______________________________

android:layout_width=z/matchjDarent"

android:layout_height二〃wrapcontent/'_________________________

android:background="#ffIff1”

android:drawableLeft="@drawable/myfragmenttel”_____________

android:drawab1eRight=z,@drawab1e/arrownormal/z

________android:drawablePadding=〃@dimen/normal_space〃________________

android:gravity二〃centervertical〃

________android:padding=〃@diinen/normal_space“________________________

android:text="聯(lián)系電話"

________android:textSize="@dimen/lexlsizedefalul1〃/>______________

</LinearLayout>

2.1.3Button

Button是程序用于和用戶交互的一個(gè)重要的控件。

實(shí)戰(zhàn)體驗(yàn)1:

布局文件:

<?xmlversion="1.0〃encoding二〃utf-8〃?>

<LinearLayout

xmlns:android="hitp://schemas.android.coin/Mpk/ros/andi、。id〃

android:orientation="vertical”___________________

cindroid:1ayout_width=/zmatch^parent^_______________________

android:layout_height=〃matchparent〃>

〈Button

android:id=〃@+id/buttonl〃

android:layout_width=,zmatch_parent"

android:layout_height=〃wrapcontent/'_____________

android:text=z/Button1〃/>

</LinearLayout>

java代碼:

packagecom.example,soft,studyapp;

importandroid,support.v7.app.AppCompatActivity;

importandroid,os.Bundle;

importandroid,view.View;

importandroid,widget.Button;

publicclassMainActivityextendsAppCompatActivity{

privateButtonbuttonl;

?Override

protectedvoidonCreate(BundlesavedinstanceState){

super.onCreate(savedlnstanceState);

setContentView(R.layout,activitymairi);

buttonl=(Button)findViewById(R?id.button!);

________buttonl.setOnClickListener(newView.OnC1ickListener(){

?Override

publicvoidonClick(Viewv){

-77茯正寫(xiě)邏輯代碼一

}

});

)

若不喜歡使用匿名內(nèi)部類的方式來(lái)注冊(cè)監(jiān)聽(tīng),也可用接口的方式進(jìn)行注冊(cè)。

packagecom.example,soft.studyapp;

importandroid,app.Activity;

importandroid,os.Bundle;

importandroid.view.View;

importandroid,widget.Button;

publicclassButtonActivityextendsActivityimplements

View.OnClickListener{

privateButtonbuttonl;

?Override

protectedvoidonCreate(BundlesavedinstanceState){

super.onCreate(savedlnstanceState);

setContentView(R.layout,activitymaiii);

buttonl=(Button)findViewById(R.id.buttonD;

button1.setOnClickListener(this);

一}一

?Override

publicvoidonClick(Viewv){

switch(v.getld()){

caseR.id.button1\

〃此處寫(xiě)邏輯操作

break;

default:

break;

}_____________________________________________

}

)

Button

?自定義選中效果

StateListDrawable對(duì)象所顯示的drawable對(duì)象會(huì)隨目標(biāo)組件狀態(tài)的改變而自

動(dòng)切換。

定義StateListDrawable對(duì)XML文件的根元素(selector.../〉,該元素可以報(bào)

考多個(gè)〈item.../>元素,該元素可以指定以下屬性。

android:color或android:drawable指定顏色或drawable對(duì)象

android:state_xxx指定一個(gè)特定的狀態(tài)

例如

<?xmlversion="1.0"encoding="utf-8"?>

<selectorxmlns:android="/apk/res/android">

<itemandroid:state_checked="true"

android:drawable="@mipmap/icon_card_select"></item>

<itemandroid:state_checked="false"

android:drawable="@mipmap/icon_card_nom"></item>

</selector>

android:state_checked代表是否已處于勾選狀態(tài)

android:state_pressed代表是否處于已按下?tīng)顟B(tài)

android:stateselected代表是否處于被選中狀態(tài)

2.1.4在活動(dòng)中使用Toast

Toast是Android系統(tǒng)提供的一種提醒方式,在程序中可以使用它將一些短

小的信息通知給用戶,并且會(huì)在一段時(shí)間后自動(dòng)消失,不會(huì)占用任何屏幕。

Toast.makeText(MainActivity.this,“youclicked

button1,,,Toast.LENGTH_SHOR).show();

通過(guò)靜態(tài)方法makeText()創(chuàng)建一個(gè)Toast對(duì)象,然后調(diào)用show()方法

將Toast顯示出來(lái),makeToast。方法需要傳入三個(gè)參數(shù),第一個(gè)參數(shù)Context,也

就是Toast的上下文,也就是一個(gè)Context對(duì)象,第二個(gè)參數(shù)是Toast顯示的文本

內(nèi)容,第三個(gè)參數(shù)是Toast顯示的時(shí)長(zhǎng),有兩個(gè)內(nèi)置的可以選擇,

Toast.LENGTHSHORT和Toast.LENGTHLONGo

2.1.5EditText

EditxText是程序用于和用戶進(jìn)行交互的另一個(gè)重要的控件,允許用戶在控

件里輸入和編輯內(nèi)容,并可以在程序中對(duì)這些內(nèi)容進(jìn)行處理,

androd:hint在輸入框中顯示提示性文字,一旦用戶輸入,文字就會(huì)自動(dòng)

消失。

常見(jiàn)的應(yīng)用場(chǎng)景,發(fā)短信,發(fā)微博,賬號(hào)登錄等等,

<?xmlversion=〃1.()〃encoding=〃utf-8〃?>

<LinearLayout

xmlns:android=〃http:〃schemas,android,com/apk/res/android〃

android:orientation=〃vertical,_________________________

android:1ayout_width=/zniat.ch_parent^_________________________

android:layout_height=〃matchparent,”)

<EditText

android:id=〃@+id/edit_text〃

android:layout_width="/niatch_parent"

android:layout_height="wrapcontent”______________

android:hint=〃請(qǐng)輸入“

/〉一

</LinearLayout>

當(dāng)輸入內(nèi)容過(guò)多是,EditText被無(wú)線拉伸怎么辦?

android:maxLines='T'

實(shí)戰(zhàn)體驗(yàn)2:

通過(guò)點(diǎn)擊按鈕獲取EditText中輸入的內(nèi)容

xml代碼:

<?xmlversion="l.0〃encoding=〃ulf-8〃?>

<LinearLayout

xmlns:android=〃http://schemas,android,com/apk/res/android”

android:orientation=/,vertical”

android:layout_width二〃matchparent”

android:layout_height=//matchparent〃>

〈EditText

android:id=z/@+id/edit_text,z

android:layout_width=〃matchparent”

android:layout_height=,/wrap_contentz,

android:hint="請(qǐng)輸入"

/>

<Button

android:id="@+id/btn_edit”___________

android:layout_width=vniatch_parent'

android:layoutheight=,rdp_conle口i〃

android:text="Buttool:clit〃

/>

(/LinearLayout>

java代碼:

packagecom.example,soft,studyapp;

importandroid,app.Activity;

importandroid,os.Bundle;

importandroid,view.View;

importandroid,widget.Button;

importandroid,widget.EditText;

importandroid,widget.Switch;

importandroid,widget.Toast;

publicclassEditActivityextendsActivityimplements

View.OnClickListener{

privateButtonbutton;

privateEditTexteditText;

?Override

protectedvoidonCreate(BundlesavedlnstanceState){

super.onCreate(savedlnstanceState);

setContentView(R.layout,activityedittexi);

button=(Button)findViewById(R.id.btn_edit);

editTexl=(EditText)findViewById(R.id.ed/,ZexZ);

button.setOnClickListener(this);

)

?Override

publicvoidonClick(Viewv){

switch(v.getld()){

caseR.id.btnedit:

StringinputText=editText.getText().toStringO;

Toast./z?a4e7ext(EditActivity.this,inputText,Toast.LENGTHSHORT).show()

break;

default:

break;

)

首先通過(guò)findViewByld。方法得到EditText的實(shí)例,在按鈕點(diǎn)的點(diǎn)擊事件

中調(diào)用EditText的getText()方法獲取輸入的內(nèi)容,再調(diào)用toString()方法轉(zhuǎn)

換成字符串,最后通過(guò)Toast將的內(nèi)容顯示出來(lái)。

實(shí)戰(zhàn)體驗(yàn)3:

制作登錄界面

2.1.6ImageView

ImageView用于在界面上展示圖片的一個(gè)控件,可以讓程序界面變得更

豐富多彩。

實(shí)戰(zhàn)體驗(yàn)1:

通過(guò)java代碼更換照片

xml布局:

<?xmlversion="1.0〃encoding=

<LinearLayout

xmlns:android=〃h11p://schemas,android,com/apk/res/android〃

android:orientalion=〃vertical”__________________________

android:layout_width=/,matchparent,z

android:layout_height="matchparent”〉

<ImageView

android:id=〃@+id/iamge_view〃

android:layout_width=〃wTap_content”

android:layout_height二〃wrap_content”

z,

android:src=^clrawabIe/inyIragmt'ins「)⑴4s〃

/)——

</LinearLayout>

java代碼:

通過(guò)調(diào)用ImageView的setlmageResource()方法將顯示的圖片換成

my_fragment_family

packagecom.example,soft,studyapp;

importandroid,app.Activity;

importandroid,os.Bundle;

importandroid,view.View;

importandroid,widget.Button;

importandroid,widget.ImageView;

publicclassImageActivityextendsActivityimplements

View.OnClickListener{

privateButtonbtn_image;

privateImageViewimageView;

?Override

protectedvoidonCreate(BundlesavedinstanceState){

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論