我是初学Android开发者。 我有一个数据库表,它计算以下列:_id,fistName,lastName和username设置为唯一的。
当我在我的表中添加另一个人并且用户名已经存在时,我创建了一个AlertDialog,但是这个AlertDialog没有出现。
这是我的源代码:
try {
personRepository.AddPerson(persons);
} catch (SQLiteConstraintException ex) {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
context);
alertDialogBuilder.setTitle("User already exist!");
alertDialogBuilder.setMessage("Choose another username!")
.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
dialog.cancel();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}
有人可以帮助我吗?
答案 0 :(得分:2)
试试这个
AlertDialog alert;
alert=new AlertDialog.Builder(YourActivity.this)
.setCancelable(false)
.setMessage("Message")
.setPositiveButton("Okay", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
// TODO Auto-generated method stub
dialog.dismiss();
}
}).show();
答案 1 :(得分:0)
如果您的AddPerson
方法调用insertOrThrow
,则更改
catch (SQLiteConstraintException ex)
到
catch (SQLException ex)