作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如果您能帮我解决这个问题,我有一个包含 3 个选项的单选警报对话框。我最初禁用了 NEXT 按钮(没有选择任何选项)。当用户选择任何选项时,我想启用 NEXT 按钮。这是我试过的代码。
int involvementInIncident;
case DIALOG_ADD_A_PERSON_INVOLVEMENT_ONE:
builder.setTitle("Involvement in this Incident");
builder.setSingleChoiceItems(incidentInvolvement, -1,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
involvementInIncident = which;
//involvementInIncident = ((AlertDialog)dialog).getListView().getCheckedItemPosition();
Toast.makeText(getApplicationContext(),""+ involvementInIncident, Toast.LENGTH_SHORT).show();
}
});
builder.setPositiveButton("Next",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//Toast.makeText(getApplicationContext(),""+ involvementInIncident, Toast.LENGTH_SHORT).show();
showDialog(DIALOG_ADD_A_PERSON_PERSON_TYPE_TWO);
}
});
builder.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
AlertDialog alertInvolvement = builder.create();
alertInvolvement.show();
final Button buttonPositiveInvolvement = alertInvolvement.getButton(AlertDialog.BUTTON_POSITIVE);
buttonPositiveInvolvement.setEnabled(false);
if(involvementInIncident == 0 || involvementInIncident == 1 || involvementInIncident==2){
buttonPositiveInvolvement.setEnabled(true);
//Toast.makeText(getApplicationContext(),"person responsiblee", Toast.LENGTH_SHORT).show();
}
else
{
buttonPositiveInvolvement.setEnabled(false);
}
return dialog;
非常感谢您的帮助。谢谢
最佳答案
终于搞定了。感谢 Piyush 和 Mystic Magic 的帮助。在这里发布代码,可能会对其他人有所帮助。全局初始化的buttonPositiveInvolvement按钮buttonPositiveInvolvement;
总结:在选择项目时启用/禁用单选 AlertDialog 中的肯定按钮。 (最初 NEXT 按钮被禁用,当一个项目被选中时它启用 NEXT 按钮)
//全局按钮buttonPositiveInvolvement;
案例 DIALOG_ADD_A_PERSON_INVOLVEMENT_ONE:
builder.setTitle("Involvement in this Incident");
builder.setSingleChoiceItems(incidentInvolvement, -1,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//to enable the the NEXT button
buttonPositiveInvolvement.setEnabled(true);
}
});
builder.setPositiveButton("Next",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
showDialog(DIALOG_ADD_A_PERSON_PERSON_TYPE_TWO);
}
});
builder.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
//This sequence needs to be followed to get it working or else it might screw up
AlertDialog alertInvolvement = builder.create();
alertInvolvement.show();
buttonPositiveInvolvement = alertInvolvement.getButton(AlertDialog.BUTTON_POSITIVE);
buttonPositiveInvolvement.setEnabled(false);
return dialog;
关于android - 在单选警报对话框中启用/禁用肯定按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21043230/
您好,我有一个表,其中包含组织每个成员的状态记录。我想根据表中提供的最新状态找出哪些成员仍然活跃。Hee 是表中记录的示例: 最佳答案 您可以使用 where 子句中的子查询获取每个名称的最后状态:
对 BDD 和 RSpec 相当陌生,我真的很好奇人们在编写 RSpec 测试/示例时通常会做什么,特别是因为它涉及同一事物的正面和负面测试。 以验证用户名和有效用户名仅包含字母数字字符的规则为例。
我是一名优秀的程序员,十分优秀!