创建alertDialog()时显示错误

时间:2013-04-22 13:21:54

标签: android android-sqlite

我是初学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();
    }

有人可以帮助我吗?

2 个答案:

答案 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)