Android 如何实现AlertDialog。编辑文本中未输入密码?
我已使用edittext和按钮实施活动: 在用户输入密码并单击按钮后,我想验证密码是否正确,并打开另一个活动。如果密码错误,我希望使用AlertDialog显示错误消息 可能吗?怎么做Android 如何实现AlertDialog。编辑文本中未输入密码?,android,android-alertdialog,Android,Android Alertdialog,我已使用edittext和按钮实施活动: 在用户输入密码并单击按钮后,我想验证密码是否正确,并打开另一个活动。如果密码错误,我希望使用AlertDialog显示错误消息 可能吗?怎么做 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.enter); //---load the S
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.enter);
//---load the SharedPreferences object---
prefs = getSharedPreferences(prefName, MODE_PRIVATE);
String a = prefs.getString(PASSWORD, "pa");
System.out.println("saved Password" +a);
EditText et = (EditText)findViewById(R.id.txtName);
String theText = et.getText().toString();
System.out.println("entered Password"+theText);
//---get the SharedPreferences object---
prefs = getSharedPreferences(prefName, MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString(PASSWORD, theText );
//---save the values---
editor.commit();
Button data = (Button)findViewById(R.id.Ok);
data.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(Enter.this,Data.class);
startActivity(i);
}
});
您可以将密码字符串捕获到按钮单击事件中。在那里,您可以根据密码的更正打开一个对话框 比如:
您必须将代码移动到按钮上的onClickListener中:
Button data = (Button)findViewById(R.id.Ok);
data.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
EditText et = (EditText)findViewById(R.id.txtName);
String theText = et.getText().toString();
prefs = getSharedPreferences(prefName, MODE_PRIVATE);
if (theText.equals(prefs.getString("PASSWORD")))
{
Intent i = new Intent(Enter.this,Data.class);
startActivity(i);
}
else
{
showDialog(myDialogID);
}
}
});
当然,您需要实现AlertDialog
myDialogID
应该是唯一的整数。(仅当您使用更多对话框时才相关)。请参阅。请在此处发布一些Java代码,因为您发布的xml和问题的描述令人困惑
Button data = (Button)findViewById(R.id.Ok);
data.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
EditText et = (EditText)findViewById(R.id.txtName);
String theText = et.getText().toString();
prefs = getSharedPreferences(prefName, MODE_PRIVATE);
if (theText.equals(prefs.getString("PASSWORD")))
{
Intent i = new Intent(Enter.this,Data.class);
startActivity(i);
}
else
{
showDialog(myDialogID);
}
}
});
protected Dialog onCreateDialog(int id) {
switch (id) {
case 0:
return new AlertDialog.Builder(this)
.setIcon(R.drawable.icon)
.setTitle(“This is a dialog with some simple text...”)
.setPositiveButton(“OK”, new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton)
{
Toast.makeText(getBaseContext(),
“OK clicked!”, Toast.LENGTH_SHORT).show();
}
})
.setNegativeButton(“Cancel”, new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton)
{
Toast.makeText(getBaseContext(),
“Cancel clicked!”, Toast.LENGTH_SHORT).show();
}
})