Android實現(xiàn)彈出列表、單選、多選框
更新時間:2020年07月27日 09:42:44 作者:zst1303939801
這篇文章主要為大家詳細介紹了Android實現(xiàn)彈出列表、單選、多選框,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了Android實現(xiàn)彈出列表、單選、多選框的具體代碼,供大家參考,具體內(nèi)容如下
效果圖如下:




需要建一個menu
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" tools:context="com.example.lyp1020k.lv.MainActivity" android:orientation="vertical"> <Button android:id="@+id/button1" android:text="列表框" android:onClick="showList" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/button2" android:text="單選列表" android:onClick="showSingleAlertDialog" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/button3" android:text="多選按鈕" android:onClick="showMutilAlertDialog" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
Java代碼如下:
import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private AlertDialog alertDialog1; //信息框
private AlertDialog alertDialog2; //單選框
private AlertDialog alertDialog3; //多選框
private Button button1;
private Button button2;
private Button button3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}
public void init(){
button1 = (Button) findViewById(R.id.button1);
button2 = (Button) findViewById(R.id.button2);
button3 = (Button) findViewById(R.id.button3);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.mian, menu);
return true;
}
public void showList(View view){
final String[] items = {"列表1", "列表2", "列表3", "列表4"};
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
alertBuilder.setTitle("這是列表框");
alertBuilder.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(MainActivity.this, items[i], Toast.LENGTH_SHORT).show();
alertDialog1.dismiss();
}
});
alertDialog1 = alertBuilder.create();
alertDialog1.show();
}
public void showSingleAlertDialog(View view){
final String[] items = {"單選1", "單選2", "單選3", "單選4"};
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
alertBuilder.setTitle("這是單選框");
alertBuilder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(MainActivity.this, items[i], Toast.LENGTH_SHORT).show();
}
});
alertBuilder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
alertDialog2.dismiss();
}
});
alertBuilder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
alertDialog2.dismiss();
}
});
alertDialog2 = alertBuilder.create();
alertDialog2.show();
}
public void showMutilAlertDialog(View view){
final String[] items = {"多選1", "多選2", "多選3", "多選4"};
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
alertBuilder.setTitle("這是多選框");
/**
*第一個參數(shù):彈出框的消息集合,一般為字符串集合
* 第二個參數(shù):默認被選中的,布爾類數(shù)組
* 第三個參數(shù):勾選事件監(jiān)聽
*/
alertBuilder.setMultiChoiceItems(items, null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i, boolean isChecked) {
if (isChecked){
Toast.makeText(MainActivity.this, "選擇" + items[i], Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(MainActivity.this, "取消選擇" + items[i], Toast.LENGTH_SHORT).show();
}
}
});
alertBuilder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
alertDialog3.dismiss();
}
});
alertBuilder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
alertDialog3.dismiss();
}
});
alertDialog3 = alertBuilder.create();
alertDialog3.show();
}
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Android ExpandableListView單選以及多選實現(xiàn)代碼
- Android ListView實現(xiàn)單選及多選等功能示例
- Android自定義單選多選下拉列表的實例代碼
- Android Recyclerview實現(xiàn)多選,單選,全選,反選,批量刪除的功能
- Android使用AlertDialog實現(xiàn)的信息列表單選、多選對話框功能
- Android中ListView + CheckBox實現(xiàn)單選、多選效果
- Android實現(xiàn)單選與多選對話框的代碼
- Android ListView構(gòu)建支持單選和多選的投票項目
- Android中創(chuàng)建對話框(確定取消對話框、單選對話框、多選對話框)實例代碼
- Android單選多選按鈕的使用方法
相關文章
Android 自定義gradle property詳解及實例代碼
這篇文章主要介紹了Android 自定義gradle property詳解及實例代碼的相關資料,需要的朋友可以參考下2017-02-02
Android開發(fā)實現(xiàn)的標準體重計算器功能示例
這篇文章主要介紹了Android開發(fā)實現(xiàn)的標準體重計算器功能,結(jié)合實例形式分析了Android體重計算器的界面布局與功能實現(xiàn)相關操作技巧,需要的朋友可以參考下2017-12-12

