Android 多種dialog的實現(xiàn)方法(推薦)
更新時間:2018年01月29日 12:09:00 作者:遲暮有話說
下面小編就為大家分享一篇Android 多種dialog的實現(xiàn)方法(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
要求:設(shè)計如下界面,包括圖片按鈕、復(fù)選按鈕、單選按鈕、普通按鈕,單擊按鈕彈出對話框,運行效果如下:
string.xml文件源代碼:
<resources> <string name="app_name">多種彈出對話框</string> <string name="dialog_img">圖片按鈕</string> <string name="dialog_radio">單選按鈕</string> <string name="dialog_box">復(fù)選按鈕</string> <string name="close">關(guān)閉</string> </resources>
布局文件源代碼:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/img" android:layout_height="100dp" android:layout_width="100dp" android:src="@drawable/aa"/> <CheckBox android:id="@+id/Checkbox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Chinese"/> <CheckBox android:id="@+id/Checkbox2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="English" android:checked="true"/> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="復(fù)選按鈕確定"/> <RadioGroup android:id="@+id/radioGroup" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"> <RadioButton android:id="@+id/male" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="male" /> <RadioButton android:id="@+id/female" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="female"/> </RadioGroup> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="單選按鈕確定"/> </LinearLayout>
java文件源代碼:
package com.example.shiyan1_4; import android.app.Dialog; import android.content.DialogInterface; import android.preference.DialogPreference; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.ImageView; import android.widget.RadioButton; import android.widget.RadioGroup; import static android.R.attr.id; public class Shiyan1_4Activity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_shiyan1_4); ImageView img = (ImageView) findViewById(R.id.img); Button button1 = (Button) findViewById(R.id.button1); Button button2 = (Button) findViewById(R.id.button2); img.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AlertDialog.Builder dialog1 = new AlertDialog.Builder(Shiyan1_4Activity.this); dialog1.setTitle(R.string.dialog_img) .setMessage("您點擊了圖片按鈕!") .setNegativeButton(R.string.close, null) .create() .show(); } }); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AlertDialog.Builder dialog1 = new AlertDialog.Builder(Shiyan1_4Activity.this); String str1 = ""; //獲取復(fù)選按鈕的值 CheckBox Checkbox1 = (CheckBox)findViewById(R.id.Checkbox1); if(Checkbox1.isChecked()){ str1 += Checkbox1.getText() + "is selected !"; } CheckBox Checkbox2 = (CheckBox)findViewById(R.id.Checkbox2); if(Checkbox2.isChecked()){ str1 += Checkbox2.getText() + " is selected !\n"; } dialog1.setTitle(R.string.dialog_box) .setMessage(str1) .setNegativeButton(R.string.close, null) .create() .show(); } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AlertDialog.Builder dialog2 = new AlertDialog.Builder(Shiyan1_4Activity.this); String str2 = ""; //獲取單選按鈕的值 RadioGroup radioGroup = (RadioGroup)findViewById(R.id.radioGroup); for (int i = 0; i <radioGroup.getChildCount(); i++){ RadioButton radioButton = (RadioButton) radioGroup.getChildAt(i); if(radioButton.isChecked()){ str2 += radioButton.getText() + " is selected !"; break; } } dialog2.setTitle(R.string.dialog_radio) .setMessage(str2) .setNegativeButton(R.string.close, null) .create() .show(); } }); } }
以上這篇Android 多種dialog的實現(xiàn)方法(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
鴻蒙手機版JNI實戰(zhàn)案例解析(JNI開發(fā)、SO庫生成、SO庫使用)
這篇文章主要介紹了鴻蒙手機版JNI實戰(zhàn)(JNI開發(fā)、SO庫生成、SO庫使用)的相關(guān)資料,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04Android 如何實現(xiàn)亮度自動調(diào)節(jié)
這篇文章主要介紹了Android 如何實現(xiàn)亮度自動調(diào)節(jié),幫助大家更好的理解和學(xué)習(xí)使用Android開發(fā),感興趣的朋友可以了解下2021-04-04ImageView的屬性android:scaleType的作用分析
本篇文章是對ImageView的屬性android:scaleType的作用進行了詳細的分析介紹,需要的朋友參考下2013-06-06Android加載大分辨率圖片到手機內(nèi)存中的實例方法
有些圖片的分辨率比較高,把它直接加載到手機內(nèi)存中之后,會導(dǎo)致堆內(nèi)存溢出的問題,下面就講解一下Android的堆內(nèi)存以及如何在Android應(yīng)用中加載一個高分辨率的圖片的方法2013-11-11Android TimeLine 時間節(jié)點軸的實現(xiàn)實例代碼
本篇文章主要介紹了Android TimeLine 時間節(jié)點軸的實現(xiàn)實例代碼,這里整理了詳細的代碼,有需要的小伙伴可以參考下。2017-03-03