android-关于 AlertDialog PositiveButton 和 NegativeButton 的问题

问题描述

关于 AlertDialog PositiveButton 和 NegativeButton 的问题

我使用下面的代码在AlertDialog中显示文件夹列表:

ListDialog = new AlertDialog.Builder(MyActivity.this);
ListDialog.setTitle("Folder List");
ListView folder = new ListView(MyActivity.this);
//scan folder
folder.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View v, int position, long id) {
//scan sub-folder
});
ListDialog.setPositiveButton("Save", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
//do something
}
});
ListDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
//back
}
});

我想让 AlertDialog的 NegativeButton 总是显示,而当 list item 数是0时, AlertDialog的 PositiveButton
才显示。如何实现?

解决方案

调用 Dialog 方法:

dialog_message("Dialog msg");
public void dialog_message(String msg)
    {
          final AlertDialog alertDialog = new AlertDialog.Builder(BottomMenu_Event.this).create();
              alertDialog.setTitle("Title");
              alertDialog.setIcon(R.drawable.icon);
              alertDialog.setMessage(msg);
              alertDialog.setButton("Save", new DialogInterface.OnClickListener()
              {
               public void onClick(DialogInterface dialog, int which)
               {
                  //Your Code....
               }
              });
              alertDialog.setButton2("Cancel", new DialogInterface.OnClickListener()
              {
               public void onClick(DialogInterface dialog, int which)
               {
                   alertDialog.dismiss();
               }
              });
              alertDialog.show();
    }

解决方案二:

试试这个

if(list.size == 0)
  ListDialog.getButton(AlertDialog.BUTTON_POSITIVE).setVisibility(View.GONE);
else
  ListDialog.getButton(AlertDialog.BUTTON_POSITIVE).setVisibility(View.VISIBLE);

解决方案三:

if(list.size!= 0){

ListDialog.setPositiveButton("Save", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
//do something
}
});
}

时间: 2025-01-19 18:00:29

android-关于 AlertDialog PositiveButton 和 NegativeButton 的问题的相关文章

dialog-如何设置 AlertDialog.Builder 的 NegativeButton 不能点击

问题描述 如何设置 AlertDialog.Builder 的 NegativeButton 不能点击 代码如下: AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setTitle("Dialog"); dialog.setPositiveButton("Check", new DialogInterface.OnClickListener() { public void onCl

Android中AlertDialog各种对话框的用法实例详解_Android

 目标效果: 程序运行,显示图一的几个按钮,点击按钮分别显示图二到图六的对话框,点击对话框的某一项或者按钮,也会显示相应的吐司输出. 1.activity_main.xml页面存放五个按钮. activity_main.xml页面: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools

简析Android多种AlertDialog对话框效果_Android

android提供了四类常用的对话框,本文分享具体实现方法: 1.AlertDialog,功能最丰富,实际运用最广泛 2.progressDialog,进度条对话框 3.DatePickerDialog,日期选择对话框 4.TimePickerDialog,时间选择对话框 这里主要介绍第一种,剩下的三种都是第一种的子类,所以其方法,都可以直接使用. 创建一个对话框一般需要下面几个步骤 1.创建AlertDialog.Builder对象 2.对AlertDialog.Builder通过SetTit

Android中AlertDialog用法实例分析_Android

本文实例分析了Android中AlertDialog用法,分享给大家供大家参考,具体如下: Android中AlertDialog为一些程序提供了对话框,有些功能能够进一步满足程序的需要.下面举例介绍. 程序如下: import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.

Android中AlertDialog的六种创建方式_Android

 创建AlertDialog的步骤: 1.创建AlertDialog.Builder对象 2.调用Builder对象的setTitle方法设置标题,setIcon方法设置图标 3.调用Builder相关方法如setMessage方法.setItems方法.setSingleChoiceItems方法.setMultiChoiceItems方法.setAdapter方法.setView方法设置不同类型的对话框内容. 4.调用setPositiveButton.setNegativeButton.s

【Android】Android中AlertDialog对话框的使用实例

package com.ceac.deng; import android.R.string; import android.support.v7.app.ActionBarActivity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.

【Android】Android中AlertDialog用法大全

package com.ceac.deng; import android.R.string; import android.support.v7.app.ActionBarActivity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.

android中alertdialog中位置异常。

问题描述 android中alertdialog中位置异常. 继承自alertdialog AlertDialog alertsemester=new DialogCourseSemester(Course_settings.this,year_count,semes); Window window=alertsemester.getWindow(); window.setGravity(Gravity.CENTER); alertsemester.show(); 如上代码,我设置了显示为中,但

Android 自定义AlertDialog对话框样式

实际的项目开发当中,经常需要根据实际的需求来自定义AlertDialog.最近在开发一个WIFI连接的功能,点击WIFI需要弹出自定义密码输入框.在此权当记录 效果图 点击首页的Button即跳出对话框,显示WIFI信息(TextView),密码输入框(EditText),取消和连接按钮(Button) 实现 根据自己实际的需求,为AlertDialog创建一个布局,在此我需要定义一个如图所示的WIFI密码输入框,故在 res/layout 目录下建立一个 dialog_layout.xml 文