0

我有一个 ArrayList 我正在发送项目 onItemClick 在另一个活动中:-

list.setOnItemClickListener(new OnItemClickListener() {

        public void onItemClick(AdapterView<?> arg0, View arg1,
                int position, long arg3) {
            Intent i = new Intent(MessageEmail.this, MessageByMessage.class);
            i.putExtra("msg_title", unreadMsgList.get(position).address);
            i.putExtra("full_msg",
                    unreadMsgList.get(position).unreadMessage);
            i.putExtra("pos", position);
            startActivity(i);
            finish();

        }
    });

并开始另一个活动并从此设置文本:-

title=getIntent().getExtras().getString("msg_title");
    message=getIntent().getExtras().getString("full_msg");
    position=getIntent().getExtras().getInt("pos");
    title_txt.setText(title);
    msg_txt.setText(message);

现在的问题是我在这个活动中有一个删除按钮。我想在 Button click 上删除项目 & 将打开我的第一个活动 Where List should be refresh。提前致谢!迪潘克

4

2 回答 2

2

这里有一个很好的例子说明如何在活动之间进行通信。基本上,您更新清单中的活动并设置android:launchMode="singleTask"。然后你处理onNewIntent被调用活动的方法。

于 2012-11-01T12:38:22.217 回答
1

使用StartActivityForResult(yourIntent,YOUR_REQUEST_CODE);onActivityResult

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
    super.onActivityResult(requestCode, resultCode, data);
    switch(requestCode)
    {
        case YOUR_REQUEST_CODE:
            if(resultCode == RESULT_OK)
                yourArrayList.remove(theItemClicked);
                yourListview.notifySetDataChanged();
            break;

        default:
            break;
    }

}

在 otherActivity 中,只需在 INTENT 中设置一些 Result,然后在 Delete Button 的 OnClick 事件中完成该 Activity。

于 2012-11-01T12:41:25.130 回答