日韩精品亚洲精品中文字幕乱伦AV|曰韩区二区三区日韩中文字幕五码|ady99久久人人看人人摸人人|动漫一区二区黄99精品视频在线|AV片在线观看亚洲中文国产精品|伦乱在线VA欧美性爱一二区|亚洲无码mv91热色视频|激情六月综合欧美精品中文

當前位置:首頁 > APP資源 > 正文內(nèi)容

androidapp開發(fā)工具(androidapp開發(fā)教程)

APP資源1年前 (2024-01-04)481

介紹AlertDialog對話框從簡到繁的多種設計方案,從新角度理解UI交互設計。

AlertDialog對話框允許自定義彈出對話框的內(nèi)容,實現(xiàn)比之前講解的幾種對話框更豐富的功能。

01

帶默認按鈕的AlertDialog

展開全文

程序單擊按鈕后執(zhí)行第17行代碼,調(diào)用自定義方法showAlertDialog。

第22~62行是自定義showAlertDialog方法。調(diào)用AlertDialog的順序是先定義Builder;對Builder調(diào)用相關方法設定屬性;定義默認按鈕及單擊監(jiān)聽器;調(diào)用Builder的create方法生成AlertDialog;最后調(diào)用AlertDialog的show方法顯示對話框。

第24行初始化builder,此時builder擁有AlertDialog對話框的默認主題。

第25行調(diào)用setTitle方法設置對話框的標題。

第26行調(diào)用setMessage方法設置對話框的提示信息。

第27行調(diào)用setIcon方法設置對話框圖標。

第30~37行添加PositiveButton按鈕,其中setPositiveButton方法的第一個參數(shù)是按鈕的顯示文本。為了便于閱讀代碼,此按鈕文本盡量采用確定語氣的文字,如“是”“確定”等。第二個參數(shù)是按鈕的單擊監(jiān)聽器。單擊此按鈕將自動關閉對話框,同時執(zhí)行第35行代碼,在文本輸入框editText1中顯示信息。變量which是PositiveButton按鈕的int型返回值。

第40~57行以同樣的方式設置“取消”和“中間”按鈕。不同的Android版本3個按鈕的外觀和位置會有差異。每個對話框可以設置1~3個對話框默認按鈕,也可以不設置按鈕。

第58行的作用是單擊對話框以外的區(qū)域,對話框仍然顯示在最上層。默認值為true,單擊對話框以外的區(qū)域,對話框?qū)⒈徽趽酢?/p>

第59行調(diào)用builder的create方法生成alertDialog1對話框。

第60行調(diào)用alertDialog1的show方法顯示對話框。

帶默認按鈕的AlertDialog運行結(jié)果如圖4-84和圖4-85所示。

■ 圖4-84彈出帶默認按鈕的AlertDialog

■ 圖4-85返回對話框按鈕信息

02

列表的AlertDialog

AlertDialog除了默認主題的對話框形式外,還支持多種類型的對話框。本案例講解列表風格的AlertDialog。

本案例的大多數(shù)代碼與4.24.1節(jié)案例的代碼類似,不同點在第29行,setItems方法將對話框設置為選項列表風格。第一個參數(shù)是用于填充下拉選項列表的字符串數(shù)組str,str數(shù)組在第4行定義。第二個參數(shù)為單擊監(jiān)聽器,處理單擊選項后的觸發(fā)事件。

第34行的OnClick方法以變量which(單擊選項列表返回的選中項索引值)為字符串數(shù)組str的索引,獲取對應選中列表中的文本,并將其傳遞給editText1。

列表風格的AlertDialog運行結(jié)果如圖4-86和圖4-87所示。

■ 圖4-86彈出列表風格的AlertDialog

■ 圖4-87返回列表風格的AlertDialog的選擇信息

03

單選的AlertDialog

單選的AlertDialog是指彈出的對話框顯示單選按鈕風格的AlertDialog。

第4行定義用于單選列表的字符串數(shù)組str。

第5行的變量num用于記錄單選風格對話框中選中項的索引值。

關鍵代碼在第31行,setSingleChoiceItems方法將對話框設置為單選按鈕風格。其中第二個參數(shù)checkedItem是設置單選按鈕列表選中項的索引值,如果是-1則所有單選按鈕都設置為未選。

第34行的變量which是單選按鈕列表的索引值,也是選中項對應字符串數(shù)組str的索引值。

第45行的變量which是AlertDialog對話框中按鈕被單擊時返回按鈕所對應的int型數(shù)值,與第34行的which含義是不同的。

如果去掉第38行的注釋,在彈出的對話框中選中單選項后,cancel方法將關閉對話框而無須再單擊“確定”按鈕,也就不會執(zhí)行第42~50行的代碼。

單選的AlertDialog運行結(jié)果如圖4-88所示。

■ 圖4-88單選的AlertDialog運行結(jié)果

04

復選的AlertDialog

復選的AlertDialog是指彈出的對話框顯示復選框風格的AlertDialog。

第4行定義用于復選框列表的字符串數(shù)組str。

第5行的布爾型數(shù)組flags定義了str數(shù)組在復選框列表中的選中狀態(tài),true為選中。flags數(shù)組的長度應與str數(shù)組長度相同。如果flags數(shù)組長度小于str數(shù)組長度,程序運行到第30行綁定兩個數(shù)組到builder時會出錯。如果flags數(shù)組長度大于str數(shù)組長度,程序運行到第45行取flags數(shù)組的長度,執(zhí)行到第48行可能會因數(shù)組索引超出str數(shù)組范圍而出錯,只要將第45行的flags.length改成str.length程序就能正常運行。

第30行的setMultiChoiceItems方法將AlertDialog設置為復選框列表。

第35行將復選項的變動值(true或false)同步到flags數(shù)組的對應項。

第45行使用for循環(huán)遍歷數(shù)組flags,狀態(tài)為true的索引項返回str數(shù)組的對應值。

第50行將對話框的返回結(jié)果傳遞給editText1。

第53~54行調(diào)用builder的create方法生成alertDialog1,再調(diào)用show方法顯示對話框。

05

自定義控件

目前為止已經(jīng)介紹了多種對話框,這些對話框的內(nèi)置控件都是定制好的。本案例講解自定義對話框中的控件。為便于講解,對話框中的控件只加入EditText和Button,讀者理解設計方式后可自行添加所需控件。

第17~19行通過自定義showAlertDialog方法的不同參數(shù)調(diào)用不同形式的自定義對話框。

當參數(shù)為10時執(zhí)行第29行開始的代碼,實現(xiàn)動態(tài)添加控件,常用于對布局要求不高的場景。第30行使用EditText的構(gòu)造方法生成一個文本輸入框editTextName。第31行將生成的editTextName文本輸入框添加到builder中。第32行添加對話框的標題。第33行添加“確定”按鈕,按鈕的單擊監(jiān)聽器將對話框中的editTextName內(nèi)容傳回main.xml布局文件中的editText1中。

當參數(shù)為20時執(zhí)行第42行開始的代碼。此時調(diào)用已經(jīng)設計好的布局文件login.xml。第43行聲明LayoutInflater類型的變量inflater20。第44行使用inflate方法將login.xml中名為linearLayoutLogin的線性布局作為View填充到viewLogin20。第45行是將builder的一系列方法放在一行中連續(xù)調(diào)用。相關按鈕的監(jiān)聽器都設置為null,單擊這些按鈕就只能執(zhí)行默認的關閉對話框操作。

當參數(shù)為30時執(zhí)行第47行開始的代碼,是對方法一的完善,可以返回文本輸入框中的文字內(nèi)容。實現(xiàn)的方式是重寫按鈕單擊監(jiān)聽器代碼。在第57行的findViewById方法前加了viewLogin30限定。第49行viewLogin30對應的是login.xml布局文件的linearLayoutLogin。如果沒有viewLogin30前綴,查找R.id.editTextName從main.xml中查詢,找不到程序就會出錯退出。如果兩個文件中控件重名,沒有viewLogin30前綴的findViewById方法取回的就是main.xml布局文件中的控件。

帶自定義控件AlertDialog運行結(jié)果如圖4-89和圖4-90所示。

■ 圖4-89彈出帶自定義控件AlertDialog

■ 圖4-90返回帶自定義控件AlertDialog信息

【注】

Spinner、AutoCompleteTextView和AlertDialog都支持類似的彈出框功能,使用時注意各自的優(yōu)缺點和使用場景。

實例講解

Android項目開發(fā)基礎與實戰(zhàn)

精彩回顧

教學輔助系統(tǒng)使用

Android項目開發(fā)相關Java基本概念

約束布局

TextView控件

Button控件

RadioButton控件

精彩預告

Activity

Broadcast

數(shù)據(jù)庫調(diào)試

?

06

視頻講解

掃碼即可觀看視頻,限時免費3天

07

參考書籍

《Android項目開發(fā)基礎與實戰(zhàn)(微課視頻版)》

androidapp開發(fā)工具(androidapp開發(fā)教程)

作者:夏江

定價:59.9元

內(nèi)容簡介

本書結(jié)合作者多年講授“Android應用軟件開發(fā)”課程的教學經(jīng)驗,融入Android開發(fā)領域新技術(shù),較為全面地介紹了Android應用軟件開發(fā)的相關知識點和開發(fā)技巧。全書共分5章,分別介紹了Android開發(fā)環(huán)境、Android項目及Java基本概念、Android常用布局、Android常用控件和其他常用編程技術(shù)。本書相關案例以Android Studio為開發(fā)環(huán)境,盡可能使用最新版本SDK命令替代棄用命令,并對控件的版本變化做大致的介紹。本書全面考慮了本科教學的特點,結(jié)合作者開發(fā)的案例庫教學輔助系統(tǒng),通過精心設計的案例和詳盡的講解、演示,讓讀者感受體驗式教學的魅力。本書適合Android Studio開發(fā)人員、Android的入門讀者、高等學校學生使用,還可以作為高等院校、相關培訓機構(gòu)的教學用書。

08

精彩推薦

微信小程序游戲開發(fā)│猜數(shù)字小游戲(附源碼+視頻)

Flink編程基礎│Scala編程初級實踐

Flink編程基礎│FlinkCEP編程實踐

Flink編程基礎│DataStream API編程實踐

Flink編程基礎│DataSet API編程實踐

數(shù) 據(jù)分析實戰(zhàn)│客戶價值分析

數(shù)據(jù)分析實戰(zhàn)│價格預測挑戰(zhàn)

數(shù)據(jù)分析實戰(zhàn)│時間序列預測

數(shù)據(jù)分析實戰(zhàn)│KaggleTitanic生存預測

微信小程序游戲開發(fā)│猜數(shù)字小游戲(附源碼+視頻)

Flink編程基礎│Scala編程初級實踐

Flink編程基礎│FlinkCEP編程實踐

Flink編程基礎│DataStream API編程實踐

Flink編程基礎│DataSet API編程實踐

數(shù) 據(jù)分析實戰(zhàn)│客戶價值分析

數(shù)據(jù)分析實戰(zhàn)│價格預測挑戰(zhàn)

數(shù)據(jù)分析實戰(zhàn)│時間序列預測

數(shù)據(jù)分析實戰(zhàn)│KaggleTitanic生存預測

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://www.atlasseeker.com/post/76598.html

分享給朋友:

“androidapp開發(fā)工具(androidapp開發(fā)教程)” 的相關文章

keepappcancel的簡單介紹

keepappcancel的簡單介紹

大部分的健身app提供健身訓練計劃教練課程分享打卡社區(qū)等功能,一些健身軟件還提供記錄體重變化和飲食習慣分析等功能下面為大家提供了幾款方便實用的健身app,一起來看看吧!1KeepappKeep是一款目前非常受歡迎的移動健身指導健身應用,是。 根據(jù)查詢百度經(jīng)驗得知,如果您不想繼續(xù)使用keep的會員服務...

app應用開發(fā)哪里做得好(各種app開發(fā)的是學什么專業(yè)的)

app應用開發(fā)哪里做得好(各種app開發(fā)的是學什么專業(yè)的)

北京華盛恒輝科技有限公司東軟集團海輝軟件等都不錯北京華盛恒輝科技有限公司hivekion是一家專注IT產(chǎn)品研發(fā)與服務的企業(yè),是全球領先的IT解決方案提供商東軟以軟件技術(shù)為核心,通過軟件與服務的結(jié)合,軟件與制造的。 其實市場上做APP的也有好多公司,但是每一個公司他主營都不一樣,因為每個公司技術(shù)的專業(yè)...

app和wap設計(app與web模式有何區(qū)別與聯(lián)系)

app和wap設計(app與web模式有何區(qū)別與聯(lián)系)

1一屏一個任務 降低用戶完成任務之時所需耗費的精力你為APP的每一屏都應當承載一個對用戶有用有價值的交互或者任務,一次完成一個任務,且只能有一個任務,其中應該不包含超過1次的行為召喚CTA這樣的設計能讓;正確的名字應該是“移動網(wǎng)頁”,這樣比較能夠準確地概括手機端的網(wǎng)頁設計因為手機自身的一些特性,所以...

南昌制作app(南昌制作企業(yè)網(wǎng)站公司)

南昌制作app(南昌制作企業(yè)網(wǎng)站公司)

1、南昌地鐵app鷺鷺行是由南昌軌道交通集團有限公司推出的一款地鐵出行軟件,能讓廣大市民朋友的出行更加方便快捷,其中掃碼乘車最為實用,用戶通過它可以在地鐵里面的閘機口掃碼,進出掃兩次碼就能完成乘車付費了,讓你不再使用零錢;夜幕app是正規(guī)的夜幕是一塊提供按摩養(yǎng)生服務的生活類軟件,可以在線預訂各種舒適...

app關鍵字排名(app關鍵詞搜索排名)

app關鍵字排名(app關鍵詞搜索排名)

1關鍵詞分析也叫關鍵詞定位 這是進行SEO優(yōu)化最重要的一環(huán),關鍵詞分析包括關鍵詞關注量分析競爭對手分析關鍵詞與網(wǎng)站相關性分析關鍵詞布置關鍵詞排名預測2網(wǎng)站架構(gòu)分析 網(wǎng)站結(jié)構(gòu)符合搜索引擎的爬蟲喜好則有利于SEO優(yōu)化。 積分墻平臺上不同的任務有不同的目的,比如下載,主要目的是沖榜搜索下載主要是提升關鍵...

浙江app制作哪家好(浙江app開發(fā)一般是什么流程)

浙江app制作哪家好(浙江app開發(fā)一般是什么流程)

1、售后服務都是長期的,保持長期運營才是做APP的目的APP開發(fā)公司哪家好,可以從以下方面著手1是否有成熟的專業(yè)的開發(fā)團隊 這代表一個APP開發(fā)公司的技術(shù)實力,如果有非常專業(yè)的開發(fā)團隊,不管客戶需要定制什么樣的功能,都;經(jīng)過小編多年的軟件開發(fā)經(jīng)驗,像企業(yè)app開發(fā),從前期投入制作到后期維護迭代更新,...