编辑与ContactsContract.PhoneLookup.DISPLAY_NAME相关的文本中的空指针异常

时间:2014-06-26 22:54:42

标签: android nullpointerexception contactscontract

好吧,我又回来了,试图帮助我建立这个应用程序的联系人部分。基本上我试图从系统联系人列表中选择一个联系人。这部分完成并正常工作。 - 我遇到问题的地方是当你选择一个名字时,它应该将人名和电话号码设置到我的应用程序中各自的文本视图中。 Logcat假定在我的代码的特定行上抛出一个Null指针异常。所以这是我正在使用的块:

    public void onActivityResult(int reqCode, int resultCode, Intent data) {

    super.onActivityResult(reqCode, resultCode, data);

    switch (reqCode) {
        case (1) :
            if (resultCode == Activity.RESULT_OK) {
            Uri contactData = data.getData();
            Cursor cursor = getContentResolver().query(contactData, null, null, null, null);
            cursor.moveToFirst();
            String name = cursor.getString(cursor.getColumnIndexOrThrow(ContactsContract.PhoneLookup.DISPLAY_NAME));
            //String number = cursor.getString(cursor.getColumnIndexOrThrow(ContactsContract.PhoneLookup.NUMBER));
            name1.setText(name);
            //num1.setText(number);
            }
            break;
    }
}

据说问题(NPE)位于我的代码的第103行,如下所示:

name1.setText(name);

我注释掉了代码的数字部分,因为我想如果我可以得到这个部分,那么下一部分就会排成一行。如果有人看到任何问题,请随时告诉我。

除此之外 - 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

你可能没有初始化name1作为@Gabe提到的(在创建或简历中你应该说name1 =(TextView)findViewById(R.id。[yourTextViewID to here])

如果不是这种情况,你就不会记录日志' name'看它是不是空?