【问题标题】:Failed to read row 0, column -1 from a CursorWindow无法从 CursorWindow 读取第 0 行第 -1 列
【发布时间】:2014-06-04 09:20:28
【问题描述】:

我尝试查找一些电话联系人并将其显示在我的应用中,但出现错误:

Failed to read row 0, column -1 from a CursorWindow which has 370 rows, 38 columns.

这是我的代码:

Cursor contacts = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);  
        String aNumberFromContacts[] = new String[contacts.getCount()];  
        int i = 0;

        int numberFieldColumnIndex = contacts.getColumnIndex(PhoneLookup.NUMBER);

        while(contacts.moveToNext()) {

            String number = contacts.getString(numberFieldColumnIndex);
            aNumberFromContacts[i] =    number ;
        i++;
        }

        contacts.close();

你能猜出是怎么回事吗?

【问题讨论】:

    标签: android android-cursor


    【解决方案1】:

    负数表示您要查找的列不存在。尝试使用 1,如果不崩溃,那么您可以确定问题出在获取列索引上。 试试这个:

    contacts.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-13
      • 2017-05-22
      • 2014-01-02
      • 2013-05-06
      • 2020-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多