利用dialog.getButton().setEnabled()实现按钮使能
2015-02-12 22:40
369 查看
<span style="font-family: Arial, Helvetica, sans-serif;"> AlertDialog.Builder builder = new AlertDialog.Builder(CheckTableActivity.this);</span>
LayoutInflater inflater = getLayoutInflater();
View view = inflater.inflate(R.layout.input_dialog, null);
dg_danger = (EditText) view.findViewById(R.id.editText1);
dg_score = (EditText) view.findViewById(R.id.editText2);
dg_spinner = (Spinner) view.findViewById(R.id.spinner1);
final int num = vp_curr>0?(vp_curr-1):0;
danger_flag = 0;
score_flag = 0;
// Inflate and set the layout for the dialog
// Pass null as the parent view because its going in the dialog layout
builder.setView(view)
// Add action buttons
.setPositiveButton("确认",
new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int id)
{
addListItem(num, dg_danger.getText().toString(), dg_score.getText().toString());
System.out.println(dg_danger.getText().toString() + ";" + dg_score.getText().toString());
}
}).setNegativeButton("取消", null).setTitle("添加隐患条目");
AlertDialog ad = builder.create();
ad.setView(view);
ad.show();
//show之后再获取按钮
final Button positiveButton = ad.getButton(AlertDialog.BUTTON_POSITIVE);
positiveButton.setEnabled(false);
System.out.println("setEnabled false");
//edittext文本改变监听,下同
dg_danger.addTextChangedListener(new TextWatcher()
{
@Override
public void afterTextChanged(Editable arg0) {
System.out.println("danger changed");
if(arg0.toString().trim().equals("")){
danger_flag = 0;
positiveButton.setEnabled(false);
System.out.println("set enabled false");
} else {
danger_flag = 1;
if(score_flag == 1)
{
positiveButton.setEnabled(true);
System.out.println("set enabled true");
}
}
}
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { }
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {}
});
dg_score.addTextChangedListener(new TextWatcher()
{
@Override
public void afterTextChanged(Editable arg0) {
System.out.println("score changed");
if(arg0.toString().equals("")){
score_flag = 0;
positiveButton.setEnabled(false);
System.out.println("set enabled false");
} else {
score_flag = 1;
if(danger_flag == 1)
{
positiveButton.setEnabled(true);
System.out.println("set enabled true");
}
}
}
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { }
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {}
}
);
相关文章推荐
- Android中利用SpannableString实现点击同一按钮(Button)不同位置执行不同任务
- Extjs 利用panel html属性加入DIV实现如TextArea的效果,并且能正确使用html标签,实现如向textarea文本域嵌入按钮button或其他控件,,而且兼容firefox
- 利用getParameterNames实现一个按钮所有模块数据都提交
- 利用Ext.ux.UploadDialog异步实现多文件上传
- 利用CBitmapButton类实现位图按钮的两种方法
- Button按钮多行显示的实现方法
- 利用CSS实现按钮效果(无图片)
- 利用样式表style实现会转动的按钮动画
- 利用pngimage实现PNG图形化按钮
- 给button等按钮和控件加背景色或者图片,dialog如何增加背景色和图片背景
- 利用GET方式实现Web登录认证的MIDLET
- 利用按钮实现asp.net网页的关闭
- 图形按钮BitmapButton的实现
- 一个继承于CButton的按钮控件类,实现Button背景色与文字的共存与改变,可以自行设计背景色
- 一个继承于CButton的按钮控件类,实现Button背景色与文字的共存与改变,可以自行设计背景色
- [VB.NET]利用vb.net创建一个完全可编辑的DataGrid,从而实现操作Access数据库进行增,删,改的功能,前提是不用任何其他的Button
- 使用button标签,实现三态图片按钮
- 屏蔽Button按钮对Enter回车键的响应 及实现Enter->Tab效果
- 三个按钮的模式对话框(javascript showModelDialog实现)
- 利用委托实现权限控制到按钮