0

我正在尝试使用从数据库中获取的短信正文打开系统短信应用程序。

我正在使用CursorSQLite数据库中检索标题和消息。我有一个smsButton将被点击的。单击时,它将创建短信意图。

我的问题是邮件正文。我希望正文是从数据库中检索到的 msg_content。我试图参考它,但我相信我失败了。

这是我最后一次尝试,尝试使用一个 TextView 来获取 msg_content 布局的 id:

//First: DataBase Retrieving :
//fetch a msg from table `t` with id `id`
Cursor cursor = myDbHelper.fetchMessage(t, id); 
String[] columns = {cursor.getColumnName(1), cursor.getColumnName(2)}; 
int[] columnsLayouts = {R.id.title, R.id.msg_content}; //the columns styles
ca = new SimpleCursorAdapter(this.getBaseContext(), R.layout.msg_items_layout, cursor,columns , columnsLayouts);
lv = (ListView) findViewById(android.R.id.list); 
lv.setAdapter(ca);

//Here is MY PROBLEM :
TextView msgText = (TextView) findViewById(R.id.msg_content); //same Id as the msg_content column above
smsButton.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            String uri= "smsto:";
            Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.parse(uri));
            intent.putExtra("sms_body", msgText.getText());
            intent.putExtra("compose_mode", true);
            startActivity(intent);
        }
    });

有什么方法可以引用内容的字符串?

4

1 回答 1

0

您正在调用findViewById()一项活动...从数据库中获取数据?

您应该使用您的Cursor来获取您的信息。

由于您没有费心提供实际的源代码(只是几个不连续的片段,AFAICT),因此很难给您具体的建议。在答案中随机戳一下,我会删除smsButton,而是听ListView项目点击(例如,onListItemClick()如果您正在实施 a ListActivity),然后使用提供position的移动到正确的位置Cursor并读出数据。

于 2011-07-10T12:10:03.533 回答