我正在尝试联系人屏幕,当用户从那里选择联系人时,它的姓名和电话号码将显示在onActivityResult
屏幕的 Toast 消息中。问题是,当我选择联系人时,当我尝试显示发生的数字错误时,它的名称会显示在 toast 中:
java.lang.illegalStateException:Couldn't read row 0,col -1 from CursorWindow.Make sure the Cursor is initialized correctly before accessing data from it.
这是我的代码onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode==Activity.RESULT_OK){
switch(requestCode){
case 1:
Cursor c=managedQuery(data.getData(), null, null, null, null);
if(c.moveToFirst()){
try{
String name=c.getString(c.getColumnIndex(People.NAME));
String no=c.getString(c.getColumnIndex(People.NUMBER));
Toast.makeText(getApplicationContext(), no, 1).show();
}
catch(Exception e){
Log.v("error", e.toString());
}
}
break;
}
}
}