Android基礎(chǔ)02-常用布局及基本UI控件

一、Android學(xué)習(xí)API指南:

1.?應(yīng)用的組成部分???App?Components

1.1.?應(yīng)用的基本原理????App?Fundamentals

1.2.?Activity??????Activities

1.2.1.?片段????Fragments

1.2.2.?加載器?????Loaders

1.2.3.?任務(wù)和返回堆????Tasks?and?Back?Stack

1.3.?Service服務(wù)???Services

1.3.1.?綁定服務(wù)?????Bound?Services

1.3.2.?AIDL???Android?Interface?Definition?Language

1.4.?內(nèi)容提供器????Content?Providers

1.4.1.?內(nèi)容提供器基礎(chǔ)???Content?Providers?Basics

1.4.2.?創(chuàng)建一個內(nèi)容提供器?????Creating?a?Content?Provider

1.4.3.?日歷提供器????Calendar?Provider

1.4.4.?通信錄提供器???Contact?Provider

1.5.?意圖和意圖過濾器????Intents?and?Intents?Filters

1.6.?進(jìn)程和線程????Process?and?Threads

1.7.?權(quán)限系統(tǒng)????Permissions

1.8.?窗口小部件????App?Widgets

1.9.?Android清單????Android?Manifest

2.?用戶界面?????User?Interface

2.1.?概述????Overview

2.2.?布局????Layout

2.2.1.?線形布局????Linear?Layout

2.2.2.?相對布局????Relative?Layout

2.2.3.?列表視圖????ListView

2.2.4.?網(wǎng)格視圖????GridView

2.3.?輸入控件???Input?Controls

2.3.1.?按鈕????Buttons

2.3.2.?文本區(qū)域????Text?Fields

2.3.3.?復(fù)選框????Checkboxes

2.3.4.?單選按鈕???Radio?Buttons

2.3.5.?開關(guān)按鈕???Toggle?Buttons

2.3.6.?下拉列表???Spinners

2.3.7.?選擇器????Pickers

2.4.?輸入事件???Input?Events

2.5.?菜單???Menus

2.6.?動作條???Action?Bar

2.7.?設(shè)置?????Settings

2.8.?對話框???Dialogs

2.9.?狀態(tài)通知????Notifications

2.10.?Toast通知???Toasts

2.11.?搜索???Search

2.11.1.?創(chuàng)建一個搜索界面????Creating?a?Search?Interface

2.11.2.?增加當(dāng)前搜索提醒??Adding?Recent?Query?Suggestions

2.11.3.?增加個性化提醒???Adding?Custom?Suggestions

2.11.4.?搜索配置???Searchable?Configuration

2.12.?拖放操作????Drag?and?Drop

2.13.?可訪問性????Accessibility

2.13.1.?應(yīng)用程序的可訪問性???Making?Applications?Accessible

2.13.2.?構(gòu)建可訪問性服務(wù)???Building?Accessibility?Services

2.14.?風(fēng)格和主題???Styles?and?Themes

2.15.?自定義控件???Custom?Components

3.?應(yīng)用程序資源???App?Resources

3.1.?概述???Overview

3.2.?提供的資源???Providing?Resources

3.3.?對資源的訪問???Accessing?Resources

3.4.?運行時變化的處理???Handling?Runtime?Changes

3.5.?本地化???Localization

3.6.?資源類型???Resource?Types

3.6.1.?動畫???Animation

3.6.2.?狀態(tài)顏色列表????Color?State?List

3.6.3.?圖形處理類資源???Drawable

3.6.4.?布局???Layout

3.6.5.?菜單???Menu

3.6.6.?字符串???String

3.6.7.?樣式????Style

3.6.8.?其他類型???More?Types

4.?動畫和圖形????Animation??and?Graphics

4.1.?概述???Overview

4.2.?屬性動畫???Property?Animation

4.3.?補間動畫???View?Animation

4.4.?幀動畫????Drawable?Animation

4.5.?畫布和繪制???Canvas?and?Drawables

4.6.?OpenGL????OpenGL??ES

4.7.?硬件加速???Hardware?Acceleration

5.?高性能計算???Computation

5.1.?RenderScript編程???RenderScript

5.2.?RenderScript編程進(jìn)階????Advanced?RenderScript

5.3.?運行時API說明????Runtime?API?Reference

6.?多媒體和照相機?????Media?and?Camera

6.1.?媒體播放????Media?Playback

6.2.?支持的媒體格式????Supported?Media?Formats

6.3.?音頻捕獲????Audio?Capture

6.4.?JET引擎????JetPlayer

6.5.?照相機??????Camera

7.?定位和傳感器????Location?and?Sensors

7.1.?定位和地圖????Location?and?Maps

7.2.?定位策略????Location?Strategies

7.3.?傳感器概述????Sensors?Overview

7.4.?手勢傳感器????Motion?Sensors

7.5.?位置傳感器????Position?Sensors

7.6.?環(huán)境傳感器????Environment?Sensors

8.?通信???Connectivity

8.1.?藍(lán)牙???Bluetooth

8.2.?NFC通信???NFC

8.2.1.?NFC基礎(chǔ)???NFC?Basics

8.2.2.?NFC進(jìn)階???Advanced?NFC

8.3.?Wi-FI直連??Wi-Fi?2P

8.4.?USB通信??USB

8.4.1.?附件模式?Accessory

8.4.2.?主機模式??Host

8.5.?SIP協(xié)議???SIP

9.?文本輸入法???Text?and?Input

9.1.?復(fù)制和粘貼????Copy?and?Input

9.2.?創(chuàng)建一個輸入法????Creating?an?IME

9.3.?拼寫檢查器????Spelling?Checker

10.?數(shù)據(jù)存儲???Data?Storage

10.1.?存儲選項???Storage?Options

10.2.?數(shù)據(jù)備份???Data?Backup

10.3.?應(yīng)用程序安裝位置???App?install?Locaiton

11.?系統(tǒng)管理員???Administration

11.1.?硬件管理???Device??Policies

12.?web應(yīng)用???Web?Apps

12.1.?概述????Overview

12.2.?web應(yīng)用的屏幕適配???Targeting?Screens?from?Web?Apps

12.3.?利用webview構(gòu)建web應(yīng)用???Building?Web?Apps?in?WebView

12.4.?調(diào)試web應(yīng)用???Debugging?Web?Apps

12.5.?web應(yīng)用的優(yōu)化???Best?Practices?for?Web?Apps

13.?更好的策略

13.1.?一致性(兼容性)??Compatibility

13.2.?支持多屏幕???Supporting?Multiple?Screens

13.2.1.?適配指定屏幕????Distributing?to?Specific?Screens

13.2.2.?屏幕兼容模式????Screen?Compatibility?Mode

13.3.?支持平板和手機???Supporting?Tablets?and?Handsets

14.?Google提供的服務(wù)??Google?Services

14.1.?應(yīng)用程序內(nèi)部付費機制

14.2.?應(yīng)用程序內(nèi)部付費機制概述

14.3.?如何使用應(yīng)用程序付費服務(wù)

14.4.?訂閱機制

14.5.?安全與設(shè)計

14.6.?測試應(yīng)用程序付費服務(wù)

14.7.?應(yīng)用程序付費機制的管理

14.8.?應(yīng)用程序付費的相關(guān)API

14.9.?應(yīng)用程序許可機制

14.10.?許可機制概述

14.11.?設(shè)置許可機制

14.12.?在應(yīng)用中增加許可

14.13.?許可機制API

14.14.?Google軟件商店服務(wù)

14.15.?在Google?Play中加過濾器

14.16.?多APK支持

14.17.?對APK附加文件的服務(wù)

14.18.?Google云消息服務(wù)

14.19.?如何使用google云服務(wù)

14.20.?架構(gòu)概述

14.21.?演示教程

14.22.?Google云服務(wù)進(jìn)階

14.23.?信息遷移


二逼泣、布局的介紹:

1辩尊、在4.0以前版本中一共有五種布局,都是ViewGroup的子類津辩。分別是AbsoluteLayout镀裤、RelativeLayout陵究、LinearLayout销部、FrameLayout摸航、TableLayout制跟。而TableLayout是LinearLayout的子類。(中文分別是:絕對布局酱虎、相對布局凫岖、線性布局、幀布局逢净、表格布局)。

2歼指、在2.2操作系統(tǒng)中將AbsoluteLayout過期爹土。而目前TableLayout也逐漸少用。

3踩身、在4.0之后又新增GridLayout胀茵。(GridLayout最經(jīng)典的案例是計算器界面)

總之,Android中一共有六種布局挟阻。目前推薦使用RelativeLayout琼娘、LinearLayout、GridLayout三種布局附鸽。


三脱拼、View類的常用xml屬性:

(一)、類結(jié)構(gòu):

java.lang.Object

? ??? android.view.View

(二)坷备、View及其子元素常用屬性:(各種布局及控件的共同屬性)

android:id

android:background

android:onClick?? ? 為該控件的單擊事件綁定監(jiān)聽器

android:padding?? ?設(shè)置控件四周的填充區(qū)域

android:visibility?? ?設(shè)置該控件是否可見(invisible/visible/gone)

android:alpha?? ? ? ?設(shè)置該組件透明度(0-1之間的數(shù)值)

android:layout_height ? ? ?子組件的布局高度

android:layout_width ? ? ? ?子組件的布局寬度

android:layout_margin?? ? 設(shè)置子組件的外邊距


四熄浓、LinearLayout:

(一)、概念:線性布局控制其中的控件或組件橫向或縱向排列省撑。在線性布局布局中赌蔑,每一行或每一列只能放單獨一個控件。線性布局不會換行竟秫。當(dāng)控件排列到窗體邊緣娃惯,后面的控件就被隱藏,而不會顯示出來肥败。

線性布局的默認(rèn)方向是水平方向(Horizontal)趾浅,還有一個選項是vertical。

(二)拙吉、LinearLayout的常用屬性:

1.android:orientation ? ? 定義布局內(nèi)控件或組件的排列方式

可選項:vertical 潮孽、 horizontal

2.android:layout_width ? ?定義控件的寬度

可選項:fill_parent / match_parent/ wrap_content/絕對數(shù)值

備注:fill_parent / match_parent的效果完全一致,都是填充整個父控件筷黔。但是自2.2版本開始推薦使用match_parent?往史。wrap_content指的是該控件的寬度正好包裹內(nèi)容物。

3.android:layout_height ? ?定義控件的高度

可選項:fill_parent / match_parent/ wrap_content/絕對數(shù)值

備注:fill_parent / match_parent的效果完全一致佛舱,都是高度填充整個父控件椎例。wrap_content指的是該控件的高度正好包裹內(nèi)容物挨决。

4.android:id ? 設(shè)置控件的id。這樣就可以在R.java中自動生成相應(yīng)的值订歪,在程序中通過findViewById就可以調(diào)用脖祈。

設(shè)置id的格式為:android:id = "@+id/id的名字"

5.android:background ? ? 設(shè)置控件的背景顏色或背景圖片

例如:android:background="#ffffff"

? ? ? ? ? ? android:background="@drawable/圖片名稱"

【備注:】

顏色有RGB顏色格式和ARGB格式。RGB是紅綠藍(lán)三原色刷晋。而ARGB是帶alpha的三原色盖高,即有透明度的三原色。

#FFFFFF 代表白色

#000000 ?黑色

#FFFFFFFF ? 完全不透明

#00FFFFFF ? 完全透明

#88FFFFFF ? 半透明

6.android:layout_weight ? ?設(shè)置控件的權(quán)重眼虱。即各控件在水平或者垂直方向上平均分配喻奥。

備注:如果是水平方向設(shè)置權(quán)重,要將android:layout_width設(shè)置為0dp捏悬,如果是垂直方向上使用權(quán)重撞蚕,要將android:layout_height設(shè)置為0dp。否則權(quán)重容易受到高度或?qū)挾鹊母蓴_而出現(xiàn)偏差过牙。

7.android:gravity ? 該屬性用來控制該View的內(nèi)容物的位置甥厦。

如果該屬性是定義在布局節(jié)點中,則該布局中所有控件的位置都受到這個屬性的控制寇钉。

如果該屬性出現(xiàn)在Button刀疙、TextView、EditText等控件中扫倡,則用來控制這些控件上的文字的位置庙洼。

可選項有:top、bottom镊辕、left油够、right、center_vertical征懈、fill_vertical 石咬、 center、fill等等卖哎。

【備注:】本屬性與android:layout_gravity不同鬼悠。

8.android:layout_gravity ??該屬性用于設(shè)置控件相對于容器的對齊方式。

可選項有:top亏娜、bottom焕窝、left、right维贺、center_vertical它掂、center_horizontal 、fill_vertical 、?center虐秋、fill等等榕茧。

這些可選項中不是適用于每一種布局。在垂直線性布局中客给,android:gravity為bottom不起作用用押;而水平線性布局中,android:gravity為right不起作用靶剑。

【備注:】而本屬性是android:layout_gravity屬性蜻拨,與 android:gravity?屬性不同。

(三)桩引、LinearLayout的特有屬性:【重新歸納:去除公共屬性后的特有屬性】

1官觅、android:orientation?? ?布局管理器內(nèi)組件的排列方式

2、android:gravity?? ?設(shè)置布局管理器內(nèi)組件的對齊方式

3阐污、android:weightSum

(四)、 LinearLayout?子元素的特有屬性:

1咱圆、android:layout_weight?? ?子元素在 LinearLayout?中所占的權(quán)重

2笛辟、android:layout_gravity? ? ?子元素在 LinearLayout?中的對齊方式


五、RelativeLayout:

(一)序苏、概念:指按著控件之間的相對位置來進(jìn)行布局手幢。

(二)、RelativeLayout特有屬性:

1忱详、android:gravity?? ?設(shè)置布局容器內(nèi)子控件的對齊方式

2围来、android:ignoreGravity?? ?設(shè)置布局管理器內(nèi)哪個控件不受gravity屬性的影響

(三)、RelativeLayout子元素的特有屬性:LayoutParams

?A匈睁、第一組:指兄弟控件之間的相對位置监透。該組屬性的值是另一個控件的id。

layout_toRightOf ? ? ?該控件在哪個控件的右側(cè)

layout_toLeftOf ? ? ? ?該控件在哪個控件的左側(cè)

layout_above ? ? ? ? ? 該控件在哪個控件的上側(cè)

layout_below ? ? ? ? ? ?該控件在哪個控件的下側(cè)

B航唆、第二組:指兄弟控件之間的對齊關(guān)系胀蛮。該組屬性的值是另一個控件的id。

layout_alignRight ? ? ?該控件與哪個控件的右對齊

layout_alignLeft ? ? ? ?該控件與哪個控件的左對齊

layout_alignTop ? ? ? ?該控件與哪個控件的頂對齊

layout_alignBottom ? 該控件與哪個控件的底對齊

C糯钙、第三組:指控件與父布局之間的對齊關(guān)系粪狼。該組屬性的值是true或者false。

layout_alignParentRight ? ? ? ? ? ? ? 該控件與父布局控件的右對齊嗎任岸?

layout_alignParentLeft ? ? ? ? ? ? ? ? 該控件與父布局控件的左對齊嗎再榄?

layout_alignParentTop ? ? ? ? ? ? ? ? 該控件與父布局控件的頂端對齊嗎?

layout_alignParentBottom ? ? ? ? ? ?該控件與父布局控件的底部對齊嗎享潜?

layout_centerInParent ? ? ? ? ? ? ? ? ?該控件位于父布局控件的中心位置嗎困鸥?

layout_centerVertical ? ? ? ? ? ? ? ? ? ?該控件位于父布局控件的垂直中心位置嗎?

layout_centerHorizontal ? ? ? ? ? ? ? ?該控件位于父布局控件的水平中心位置嗎剑按?


六窝革、GridLayout:網(wǎng)格布局

(一)购城、GridLayout布局屬性:

1、android:alignmentMode

屬性說明:設(shè)置布局的對齊模式虐译”癜澹可以取以下值:

alignBounds -- 對齊子視圖邊界。

alignMargins -- 對齊子視圖邊距漆诽。

2侮攀、android:columnCount

屬性說明:GridLayout的最大列數(shù)

3、android:rowCount

屬性說明:GridLayout的最大行數(shù)

4厢拭、android:orientation

屬性說明:GridLayout中子元素的布局方向兰英。有以下取值:

horizontal -- 水平布局。

vertical -- 豎直布局供鸠。

5畦贸、android:columnOrderPreserved

屬性說明: 設(shè)置該網(wǎng)格布局是否保留列序號。默認(rèn)是true楞捂。

6薄坏、android:rowOrderPreserved

屬性說明:?設(shè)置該網(wǎng)格布局是否保留行序號。默認(rèn)是true寨闹。

7胶坠、android:useDefaultMargins

屬性說明: 設(shè)置GridLayout使用默認(rèn)的邊距。默認(rèn)值是false繁堡。

(二)沈善、GridLayout子元素的屬性:

1、android:layout_column

屬性說明: 顯示該控件的列椭蹄。例如闻牡,android:layout_column="0",表示在第1列顯示該控件绳矩;android:layout_column="1"澈侠,表示在第2列顯示該控件。

2埋酬、android:layout_row

屬性說明: 該控件所在行哨啃。例如,android:layout_row="0"写妥,表示在第1行顯示該控件拳球;android:layout_row="1",表示在第2行顯示該控件珍特。它和 android:layout_column類似祝峻。

3、android:layout_columnSpan

屬性說明: 列合并。即該控件所占的列數(shù)莱找。例如酬姆,android:layout_columnSpan="2",表示該控件占2列奥溺。

4辞色、android:layout_rowSpan

屬性說明: 行合并。即該控件所占的行數(shù)浮定。例如相满,android:layout_rowSpan="2",表示該控件占2行桦卒。

5立美、android:layout_gravity

屬性說明:該控件的布局方式。選項值:

top ? ? ? ? ? ? ? ? ? ? ?-- 控件置于容器頂部方灾,不改變控件的大小建蹄。

bottom ? ? ? ? ? ? ? ?-- 控件置于容器底部,不改變控件的大小裕偿。

left ? ? ? ? ? ? ? ? ? ? -- 控件置于容器左邊洞慎,不改變控件的大小。

right ? ? ? ? ? ? ? ? ? -- 控件置于容器右邊击费,不改變控件的大小。

center_vertical ? ? -- 控件置于容器豎直方向中間桦他,不改變控件的大小蔫巩。

fill_vertical ? ? ? ? ?-- 如果需要,則往豎直方向延伸該控件快压。

center_horizontal -- 控件置于容器水平方向中間圆仔,不改變控件的大小。

fill_horizontal ? ? ?-- 如果需要蔫劣,則往水平方向延伸該控件坪郭。

center ? ? ? ? ? ? ? ?-- 控件置于容器中間,不改變控件的大小脉幢。

fill ? ? ? ? ? ? ? ? ? ? -- 如果需要歪沃,則往水平、豎直方向延伸該控件嫌松。

clip_vertical ? ? ? ?-- 垂直剪切沪曙,剪切的方向基于該控件的top/bottom布局屬性。若該控件的gravity是豎直的:若它的gravity是top的話萎羔,則剪切該控件的底部液走;若該控件的gravity是bottom的,則剪切該控件的頂部。

clip_horizontal ? ? -- 水平剪切缘眶,剪切的方向基于該控件的left/right布局屬性嘱根。若該控件的gravity是水平的:若它的gravity是left的話,則剪切該控件的右邊巷懈;若該控件的gravity是 ?right的该抒,則剪切該控件的左邊。

start ? ? ? ? ? ? ? ? ?-- 控件置于容器的起始處砸喻,不改變控件的大小柔逼。

end ? ? ? ? ? ? ? ? ? -- 控件置于容器的結(jié)束處,不改變控件的大小割岛。


七愉适、Android UI控件及UI組件:

(一)、控件名稱:【標(biāo)紅色的為常用的】

TextView ? ? ? ?文本視圖

EditText ? ? ? ??文本編輯框

Button ? ? ? ? ? ?按鈕

ImageView癣漆、Gallery ? 圖像視圖维咸、畫廊(建議過期)

ImageButton ? ?圖片按鈕

ToggleButton 、Switch ? ?開關(guān)按鈕惠爽、開關(guān)

RadioButton ? ?單選按鈕

CheckBox ? ? ??多選框

Spinner ? ? ? ? ??下拉列表

AutoCompleteTextView ??自動完成文本框

ProgressBar ? ?進(jìn)度條

SeekBar ? ? ? ? ?拖動條

RatingBar ? ? ? ?星級評分條

TimePicker癌蓖、DatePicker ??時間選擇器、日期選擇器

AnalogClock婚肆、DigitalClock ? ?模擬時鐘租副、數(shù)字時鐘

Dialog(AlertDialog、ProgressDialog较性、TimePickerDialog用僧、DatePickerDialog)提示對話框、進(jìn)度對話框赞咙、時間選擇對話框责循、日期選擇對話框

ListView、GridView ? ? ? ?列表視圖【最重要的UI組件】攀操、 網(wǎng)格視圖

ScrollView ? ? ?滾動視圖

ExpandableListView?? 可展開列表視圖

WebView ? ? ? ?網(wǎng)頁視圖

SearchView ? ?搜索框

TabHost? ? ? ? ?書簽選項卡

Notification 院仿、Toast ? ? ????通知?、?吐司(短時提醒)

Menu(OptionMenu /SubMenu速和、ContextMenu) ? ?菜單(選項菜單歹垫、上下文菜單)

ImageSwitcher、TextSwitcher ? 颠放、 ??ViewPager?圖像切換器县钥、文本切換器

ActionBar ? ? ? ?動作導(dǎo)航條


八、基本控件:——TextView:

(一)慈迈、TextView類結(jié)構(gòu):

java.lang.Object

? ?? android.view.View

? ? ? android.widget.TextView

(二)若贮、TextView?常用屬性:

1省有、andorid:text?? 設(shè)置文本的內(nèi)容

2、 android:textColor?? ? 設(shè)置文本的顏色

3谴麦、 android:textSize?? ? ? 設(shè)置文本的字體大写姥亍(sp)

4、andorid:height ? ? ? ? ?設(shè)置文本的高度匾效,以像素為單位

5舷蟀、 android:width ? ? ? ? ? ?設(shè)置文本的寬度,以像素為單位

6面哼、 android:inputType?? ? 設(shè)置文本的類型野宜。例如是普通文本,還是email魔策,password匈子,數(shù)字等等。

7闯袒、 android:singleLine ? ? 設(shè)置文本是否是單行顯示虎敦。

8、android:gravity?? ? 設(shè)置文本框內(nèi)文本的對齊方式政敢∑溽悖可選項有:top、bottom喷户、left唾那、right、center褪尝、fill闹获、center_vertical、center_horizontal恼五、fill_horizontal等等昌罩。這些屬性值也可以同時指定哭懈,各屬性值之間用豎線隔開灾馒。例如right|bottom

9、android:drawableLeft?? ?用于在文本框左側(cè)繪制圖片遣总。該屬性值通過“@drawable/圖片文件名”來設(shè)置睬罗。

10、android:drawableRight ? ?用于在文本框左側(cè)繪制圖片旭斥。該屬性值通過“@drawable/圖片文件名”來設(shè)置容达。

11、android:drawableTop ? ?用于在文本框左側(cè)繪制圖片垂券。該屬性值通過“@drawable/圖片文件名”來設(shè)置花盐。

12羡滑、android:drawableBottom ? 用于在文本框左側(cè)繪制圖片。該屬性值通過“@drawable/圖片文件名”來設(shè)置算芯。

13柒昏、android:autoLink?? 給指定的文本增加可單擊的超鏈接∥踝幔可選項為:none职祷、web、email届囚、phone有梆、map和all。

? ? ? ??多個選項之間使用“|”分隔意系,也可以使用all泥耀。

14、android:hint?? ?設(shè)置當(dāng)文本框內(nèi)文本內(nèi)容為空時昔字,默認(rèn)顯示的提示性文字爆袍。

【補充:】

1、android:textAllCaps="true" ? ? 設(shè)置所有字母都大小

2作郭、android:ellipsize="end" ? ? ? ? ? 文字過長陨囊,設(shè)置省略號〖性埽可選項:start , end ,middle蜘醋,marquee

android:ellipsize="start" 省略號在開頭

android:ellipsize="middle" 省略號在中間

android:ellipsize="end" 省略號在結(jié)尾

android:ellipsize="marquee" 跑馬燈顯示

【備注:】要實現(xiàn)跑馬燈效果。要同時具有以下屬性咏尝。

android:ellipsize="marquee"

android:singleLine="true"

android:focusable="true"

android:focusableInTouchMode="true"

android:marqueeRepeatLimit="marquee_forever"


九压语、基本控件:——EditText:

(一)、 EditText?類結(jié)構(gòu):

java.lang.Object

? ?? android.view.View

? ? ? android.widget.TextView

? ? ? ? android.widget.EditText

?所以 EditText?繼承了TextView的所有屬性编检。

(二)胎食、android:inputType的可選項:

android:inputType="textPersonName"

android:inputType="textPassword"

android:inputType="numberPassword" ? ? ?只可以輸入數(shù)字

android:inputType="textEmailAddress"

android:inputType="phone" ? ? ?只允許輸入數(shù)字,括號等特殊符號允懂,不可以輸入字母厕怜。

android:inputType="textPostalAddress"

android:inputType="time"

android:inputType="date"

android:inputType="number"


十、基本控件:——Button:

(一)蕾总、Button類結(jié)構(gòu):

java.lang.Object

? ?? android.view.View

? ?? ? android.widget.TextView

? ? ?? ? android.widget.Button

?所以Button繼承了TextView的所有屬性粥航。

【特別補充:】sp、dp生百、dip递雀、dpi 、 pt蚀浆、px等單位的區(qū)別?【重點】

dpi ? ?dpi指像素密度缀程。dots per inch ?搜吧,即每英寸內(nèi)像素點的個數(shù)。它不是表示長度的單位杨凑。

在android中認(rèn)為:低(120dpi)赎败,中(160dpi),高(240dpi)蠢甲,超高(320dpi)僵刮。隨著技術(shù)的增長,實際dpi已經(jīng)超出這個定義鹦牛。

dip ? ?dimension independent pixels ?搞糕,即與設(shè)備無關(guān)的像素。目前這個單位已經(jīng)被dp所取代曼追,而不建議使用dip窍仰。

dp ? ? 與dip的概念一樣。不過dp已經(jīng)取代了dip礼殊。在Android中用來表示非文字大小的尺寸驹吮。例如:外邊距、內(nèi)填充等晶伦。

px = dp * (dpi / 160)

3.7寸屏幕碟狞,分辨率320*480手機上,正好1px = 1dp婚陪。

sp ? ? ?scale ?independent ?pixel ?族沃,即與縮放比例無關(guān)的像素。在android中常用來表示文字大小泌参。

px ? ? ?表示像素脆淹。因為同樣是200px,但是在不同手機下顯示的大小是不同的沽一。

pt ? ? ?point磅盖溺。1磅=1/74英寸

xlarge 屏幕至少:960dp x 720dp

large 屏幕至少 :640dp x 480dp

normal 屏幕至少 :480dp x 320dp

small 屏幕至少 :426dp x 320dp

總之:dp是用來定義非文字的尺寸,sp用來定義文字大小铣缠。px只用于產(chǎn)生一條一像素的分割線時使用烘嘱。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市攘残,隨后出現(xiàn)的幾起案子拙友,更是在濱河造成了極大的恐慌为狸,老刑警劉巖歼郭,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異辐棒,居然都是意外死亡病曾,警方通過查閱死者的電腦和手機牍蜂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來泰涂,“玉大人鲫竞,你說我怎么就攤上這事”泼桑” “怎么了从绘?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長是牢。 經(jīng)常有香客問我僵井,道長,這世上最難降的妖魔是什么驳棱? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任批什,我火速辦了婚禮,結(jié)果婚禮上社搅,老公的妹妹穿的比我還像新娘驻债。我一直安慰自己,他們只是感情好形葬,可當(dāng)我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布合呐。 她就那樣靜靜地躺著,像睡著了一般笙以。 火紅的嫁衣襯著肌膚如雪合砂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天源织,我揣著相機與錄音翩伪,去河邊找鬼。 笑死谈息,一個胖子當(dāng)著我的面吹牛缘屹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播侠仇,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼轻姿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了逻炊?” 一聲冷哼從身側(cè)響起互亮,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎余素,沒想到半個月后豹休,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡桨吊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年威根,在試婚紗的時候發(fā)現(xiàn)自己被綠了凤巨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡洛搀,死狀恐怖敢茁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情留美,我是刑警寧澤彰檬,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布栖袋,位于F島的核電站妄辩,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏哥谷。R本人自食惡果不足惜棺榔,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一瓶堕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧症歇,春花似錦郎笆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至设塔,卻和暖如春凄吏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背闰蛔。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工痕钢, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人序六。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓任连,卻偏偏與公主長得像,于是被迫代替她去往敵國和親例诀。 傳聞我的和親對象是個殘疾皇子随抠,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,901評論 2 345