单击 AlertDialog.PossitiveButton 时什么都不做
Do NOTHING when clicking AlertDialog.PossitiveButton
我有一个 AlertDialog
里面有一个 EditText
:
final EditText et = new EditText(getActivity());
AlertDialog.Builder myDialog = new AlertDialog.Builder(getActivity());
myDialog.setTitle("My Title").setView(et);
myDialog.setPositiveButton("Ok",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if(et.getText().toString() != ""){
//Do funny things
}
}
});
myDialog.setNegativeButton("Ok",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
如果 EditText
是空的,我的 objective 什么都不做,什么都没有,我什么意思都没有。但是有两个问题:
单击setPositiveButton
时,即使onClick
方法为空,对话框也会关闭。
如果 EditText
为空,我不知道在 if 条件下我应该匹配哪个 ASCII 字符。我的意思是:
vNombre.getText().toString() == null;
vNombre.getText().toString() == " ";
vNombre.getText().toString() == "";
这 3 个陈述 return 错误,所以我不知道我应该比较什么 et.getText().toString()
在不向对话框视图添加自定义按钮的情况下,是否有解决问题 1 的方法?
对问题 2 有什么想法吗?
请使用equals("")
代替==
if(!et.getText().toString().equals("")
{
//Do funny things
}
你可以阅读Java String Compare Example
What's the difference between ".equals" and "=="?
您应该尝试使用下面的代码来检查 String
是否为空,而不是上面的代码。
if (!TextUtils.isEmpty(et.getText().toString())) {
}
要在单击肯定按钮时不关闭对话框,您需要自定义 Dialog
已经有很多 SO questions/answers 了。参见 here。
试试这个
String gettext = et.getText().toString();
if(!gettext.contentEquals("")){
//do funny things
}
始终检查字符串的长度以检查是否为空。
int length = ed.getText().toString().trim().length();
if(length > 0)
{
//do your work here
}
我有一个 AlertDialog
里面有一个 EditText
:
final EditText et = new EditText(getActivity());
AlertDialog.Builder myDialog = new AlertDialog.Builder(getActivity());
myDialog.setTitle("My Title").setView(et);
myDialog.setPositiveButton("Ok",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if(et.getText().toString() != ""){
//Do funny things
}
}
});
myDialog.setNegativeButton("Ok",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
如果 EditText
是空的,我的 objective 什么都不做,什么都没有,我什么意思都没有。但是有两个问题:
单击
setPositiveButton
时,即使onClick
方法为空,对话框也会关闭。如果
EditText
为空,我不知道在 if 条件下我应该匹配哪个 ASCII 字符。我的意思是:vNombre.getText().toString() == null; vNombre.getText().toString() == " "; vNombre.getText().toString() == "";
这 3 个陈述 return 错误,所以我不知道我应该比较什么 et.getText().toString()
在不向对话框视图添加自定义按钮的情况下,是否有解决问题 1 的方法?
对问题 2 有什么想法吗?
请使用equals("")
代替==
if(!et.getText().toString().equals("")
{
//Do funny things
}
你可以阅读Java String Compare Example
What's the difference between ".equals" and "=="?
您应该尝试使用下面的代码来检查 String
是否为空,而不是上面的代码。
if (!TextUtils.isEmpty(et.getText().toString())) {
}
要在单击肯定按钮时不关闭对话框,您需要自定义 Dialog
已经有很多 SO questions/answers 了。参见 here。
试试这个
String gettext = et.getText().toString();
if(!gettext.contentEquals("")){
//do funny things
}
始终检查字符串的长度以检查是否为空。
int length = ed.getText().toString().trim().length();
if(length > 0)
{
//do your work here
}