Android 安卓:McClickListener的问题
我是一个Android初学者。我正在尝试创建一个短信应用程序 我创建了一个Android 安卓:McClickListener的问题,android,Android,我是一个Android初学者。我正在尝试创建一个短信应用程序 我创建了一个TabHost,其中包含三个TabSpect(ListView、ListView、TextView),用于打印我的收件箱,发送,并在文本视图中打印一些有用的信息 现在,如果我试图单击列表视图中的任何项目,它将打开SMS管理器,其中将填充我单击的SMS的电话号码 每次我尝试这个,我都会收到一个错误 list1.setOnItemClickListener(new OnItemClickListener() { @Overri
TabHost
,其中包含三个TabSpect(ListView、ListView、TextView)
,用于打印我的收件箱
,发送
,并在文本视图
中打印一些有用的信息
现在,如果我试图单击列表视图中的任何项目,它将打开SMS管理器,其中将填充我单击的SMS的电话号码
每次我尝试这个,我都会收到一个错误
list1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg, View view, int position,long id) {
Uri uriSMSURIs = Uri.parse("content://sms/inbox");
String pos = String.valueOf(position);
Log.d(TAG, "value: " + pos);
Cursor c = getContentResolver().query(uriSMSURIs, null, pos, null, null);
Log.e(TAG, "value: " + c);
String phoneNumber = c.getString(c.getColumnIndex("address"));
Log.e(TAG, "Value: " + phoneNumber;
Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.putExtra("address", phoneNumber);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
}
});
它抛出以下错误:
04-02 07:53:15.504:错误/smsmsmanager(328):值:android.content.ContentResolver$CursorWrapperInner@43e2b800.
我不知道是否可以这样做。我认为您传递给查询的参数类型错误。试试这个:
long id = arg.getItemIdAtPosition(position);
Cursor c = getContentResolver().query(uriSMSURIs, null, "_id = ?", new String[]{Long.toString(id)}, null);
请参阅文档。它返回的值与我的变量pos(String pos=String.valueOf(position);)的值相同,因此它不起作用,我已经阅读了ContentResolver的文档。您有其他想法吗?您尝试过将第三个参数设置为“_id=?”,但它仍然不起作用?在最初的示例中,您将'pos'传递到query()的'selection'参数中,而不是传递到'selectionArgs'参数中。是的,但我添加了Log.d(标记,“Value of:+id”),它返回的值与我必须具有的posWitch premissions相同?
long id = arg.getItemIdAtPosition(position);
Cursor c = getContentResolver().query(uriSMSURIs, null, "_id = ?", new String[]{Long.toString(id)}, null);