日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android中五种常用对话框的使用

發布時間:2025/3/19 Android 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android中五种常用对话框的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

場景

Android中常用的五種對話框為

常規對話框、帶列表的對話框、自定義的對話框、帶進度條的對話框、帶日期選擇器的對話框。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

常規對話框

新建一個空項目,調整activity_main.xml的布局為LinearLayout,并添加一個Button,設置其點擊事件

??? <Buttonandroid:id="@+id/button_normal_dialog"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startNormalDialog"android:text="啟動常規對話框" />

然后在activity中實現其點擊方法

??? /**** 啟動常規對話框* @param view*/public void startNormalDialog(View view){new AlertDialog.Builder(this).setIcon(R.drawable.ic_launcher_background).setTitle("公眾號:霸道的程序猿").setCancelable(false).setMessage("是否刪除該條記錄").setPositiveButton("是", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,"刪除記錄成功",Toast.LENGTH_LONG).show();}}).setNegativeButton("否", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,"取消刪除記錄",Toast.LENGTH_LONG).show();}}).show();}

運行項目查看效果

?

帶列表的對話框

在布局文件中添加一個按鈕

??? <Buttonandroid:id="@+id/button2"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startListDialog"android:text="啟動帶列表的對話框" />

在activity中實現其點擊方法

??? /*** 啟動帶列表的對話框* @param view*/public void startListDialog(View view){final String[] items = {"關注","公眾號","霸道的程序猿","獲取","編程教程與資源"};new AlertDialog.Builder(this).setTitle("公眾號:霸道的程序猿").setCancelable(false).setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,items[which],Toast.LENGTH_LONG).show();}}).setPositiveButton("OK",null).show();?}

運行之后查看效果

?

自定義視圖的對話框

在layout下新建layout資源文件dialog_view.xml

<?xml version="1.0" encoding="utf-8"?> <androidx.appcompat.widget.LinearLayoutCompatxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation= "vertical"><EditTextandroid:id="@+id/text_username"android:layout_width="match_parent"android:layout_height="wrap_content"android:ems="10"android:hint="用戶名"android:inputType="textPersonName" /><EditTextandroid:id="@+id/text_pwd"android:layout_width="match_parent"android:layout_height="wrap_content"android:ems="10"android:hint="密碼"android:inputType="textPersonName" /> </androidx.appcompat.widget.LinearLayoutCompat>

然后在主布局文件中添加一個按鈕

??? <Buttonandroid:id="@+id/button3"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startCustomDialog"android:text="啟動自定義的對話框" />

在activity中實現其點擊方法

??? /*** 啟動自定義的對話框* @param view*/public void startCustomDialog(View view){View v = View.inflate(this,R.layout.dialog_view,null);final EditText user = v.findViewById(R.id.text_username);final EditText pwd = v.findViewById(R.id.text_pwd);new AlertDialog.Builder(this).setTitle("公眾號:霸道的程序猿").setCancelable(false).setView(v).setPositiveButton("登錄", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {String username = user.getText().toString().trim();String password = pwd.getText().toString().trim();Toast.makeText(MainActivity.this,"用戶名:"+username+"密碼:"+password,Toast.LENGTH_LONG).show();}}).show();}

運行之后查看效果

?

帶進度條的對話框

在布局文件中添加按鈕

??? <Buttonandroid:id="@+id/button4"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startProgressDialog"android:text="啟動帶進度條的對話框" />

在activity中實現其點擊方法

??? /*** 啟動帶進度條的對話框* @param view*/public void startProgressDialog(View view){final ProgressDialog progressDialog = new ProgressDialog(this);progressDialog.setTitle("公眾號:霸道的程序猿");progressDialog.setCancelable(false);progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);progressDialog.show();new Thread(new Runnable() {@Overridepublic void run() {for(inti=1;i<=20;i++){try {Thread.sleep(200);} catch (InterruptedException e) {e.printStackTrace();}progressDialog.setProgress(progressDialog.getProgress()+5);}progressDialog.dismiss();}}).start();}

運行之后查看效果

?

帶日期選擇器的對話框

在布局文件中添加按鈕

??? <Buttonandroid:id="@+id/button5"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startDatePickDialog"android:text="啟動帶日期選擇器的對話框" />

在activity中實現其點擊方法

??? /*** 啟動帶日期選擇器的對話框* @param view*/public void startDatePickDialog(View view){Calendar calendar = Calendar.getInstance();int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int day = calendar.get(Calendar.DAY_OF_MONTH);new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {Toast.makeText(MainActivity.this,"選中了"+year+"年"+month+"月"+dayOfMonth+"日",Toast.LENGTH_LONG).show();}},year,month,day).show();}

運行之后查看效果

?

activity_main.xml完整代碼

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".MainActivity"><Buttonandroid:id="@+id/button_normal_dialog"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startNormalDialog"android:text="啟動常規對話框" /><Buttonandroid:id="@+id/button2"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startListDialog"android:text="啟動帶列表的對話框" /><Buttonandroid:id="@+id/button3"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startCustomDialog"android:text="啟動自定義的對話框" /><Buttonandroid:id="@+id/button4"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startProgressDialog"android:text="啟動帶進度條的對話框" /><Buttonandroid:id="@+id/button5"android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="startDatePickDialog"android:text="啟動帶日期選擇器的對話框" /> </LinearLayout>

MainActivity完整代碼

package com.badao.androidstudy;import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity;import android.app.DatePickerDialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.DatePicker; import android.widget.EditText; import android.widget.Toast;import java.util.Calendar;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}/**** 啟動常規對話框* @param view*/public void startNormalDialog(View view){new AlertDialog.Builder(this).setIcon(R.drawable.ic_launcher_background).setTitle("公眾號:霸道的程序猿").setCancelable(false).setMessage("是否刪除該條記錄").setPositiveButton("是", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,"刪除記錄成功",Toast.LENGTH_LONG).show();}}).setNegativeButton("否", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,"取消刪除記錄",Toast.LENGTH_LONG).show();}}).show();}/*** 啟動帶列表的對話框* @param view*/public void startListDialog(View view){final String[] items = {"關注","公眾號","霸道的程序猿","獲取","編程教程與資源"};new AlertDialog.Builder(this).setTitle("公眾號:霸道的程序猿").setCancelable(false).setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,items[which],Toast.LENGTH_LONG).show();}}).setPositiveButton("OK",null).show();}/*** 啟動自定義的對話框* @param view*/public void startCustomDialog(View view){View v = View.inflate(this,R.layout.dialog_view,null);final EditText user = v.findViewById(R.id.text_username);final EditText pwd = v.findViewById(R.id.text_pwd);new AlertDialog.Builder(this).setTitle("公眾號:霸道的程序猿").setCancelable(false).setView(v).setPositiveButton("登錄", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {String username = user.getText().toString().trim();String password = pwd.getText().toString().trim();Toast.makeText(MainActivity.this,"用戶名:"+username+"密碼:"+password,Toast.LENGTH_LONG).show();}}).show();}/*** 啟動帶進度條的對話框* @param view*/public void startProgressDialog(View view){final ProgressDialog progressDialog = new ProgressDialog(this);progressDialog.setTitle("公眾號:霸道的程序猿");progressDialog.setCancelable(false);progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);progressDialog.show();new Thread(new Runnable() {@Overridepublic void run() {for(int i=1;i<=20;i++){try {Thread.sleep(200);} catch (InterruptedException e) {e.printStackTrace();}progressDialog.setProgress(progressDialog.getProgress()+5);}progressDialog.dismiss();}}).start();}/*** 啟動帶日期選擇器的對話框* @param view*/public void startDatePickDialog(View view){Calendar calendar = Calendar.getInstance();int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int day = calendar.get(Calendar.DAY_OF_MONTH);new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {Toast.makeText(MainActivity.this,"選中了"+year+"年"+month+"月"+dayOfMonth+"日",Toast.LENGTH_LONG).show();}},year,month,day).show();}}

?

?

總結

以上是生活随笔為你收集整理的Android中五种常用对话框的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 最新色视频 | 欧美亚洲另类视频 | 欧美少妇15p | 澳门黄色 | 日出白浆视频 | 欧美在线日韩在线 | 手机在线免费看av | 日本做受| 成人免费一级视频 | 人人妻人人爽一区二区三区 | 国产成人精品一区二区三区无码熬 | 亚洲日本中文字幕在线 | 日韩中文字幕电影 | 亚洲av无码一区二区三区性色 | 亚洲第一页乱 | 精品熟妇一区二区三区 | 亚洲精品一区中文字幕乱码 | 第一av| 岛国av免费 | 婷婷九月综合 | 国产一区二区三区网站 | 欧美另类z0z变态 | 91抖音在线观看 | 爱的色放在线 | 在线观看视频毛片 | 日韩精品电影 | 91一区在线| 一呦二呦三呦精品网站 | 激情片| 日日操夜夜摸 | 无码日韩人妻精品久久蜜桃 | 成人福利一区 | 亚洲av综合色区无码一区 | 黑人大群体交免费视频 | 色xxxx | 国产精品777 | 米奇7777狠狠狠狠视频 | 国产+高潮+白浆+无码 | 亚洲Av无码成人精品区伊人 | 拔擦8x成人一区二区三区 | 国产在线青青草 | 青娱乐自拍视频 | 激情插插 | 成人免费视频大全 | www.国产成人 | 婷婷狠狠干 | 女人裸体无遮挡 | 午夜丁香网 | 超污视频网站 | 波多野结衣绝顶大高潮 | 人人看人人插 | 骚鸭av| 奇米影视在线观看 | 国产一级片a| 国产亚洲精品自拍 | 91青青草| www污污 | 免播放器av| 视频在线免费观看 | xx性欧美肥妇精品久久久久久 | 日本夜夜操 | 99热| 91涩涩视频 | 天天综合天天添夜夜添狠狠添 | 国产黄大片在线观看画质优化 | 艳妇臀荡乳欲伦交换gif | 69精品无码成人久久久久久 | 欧美图片自拍偷拍 | 欧美色图17p| caoporn超碰97| 岛国av电影在线观看 | jizz中文字幕 | 亚洲欧美视频在线播放 | 黄色免费在线视频 | 天天射寡妇射 | 国产福利91 | 亚洲h视频在线观看 | 97视频精品| 欧美动态色图 | 日本一区二区不卡视频 | 久久午夜国产精品 | 国产卡一卡二卡三无线乱码新区 | 精品国产成人亚洲午夜福利 | 色吧综合 | 张柏芝54张无删码视频 | 男人av的天堂 | 91成人在线免费观看 | 精品日韩一区 | 宅男的天堂| 高清一级片 | 色图自拍偷拍 | 欧美高清x| 私拍在线| 91香蕉视频污污 | 看av网| 我的好妈妈在线观看 | 97人妻精品一区二区三区软件 | 日日麻批免费视频播放 | 无码精品视频一区二区三区 |