android AlertDialog设置点击button不退出

转载于http://blog.csdn.net/csh159/article/details/8127280

 

使用的是java里面的反射机制:

dialog = new AlertDialog.Builder(MainActivity.this);
dialog.setTitle("输入用户名:");
dialog.setPositiveButton("start",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialogq, int which) {
Field field;
try {
field = dialogq.getClass().getSuperclass()
.getDeclaredField("mShowing");
field.setAccessible(true);
// 设置mShowing值,欺骗android系统
field.set(dialogq, false);//如果为true则会推出
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
});
dialog.setNegativeButton("stop", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();

}
});
dialog.setView(linear);

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。