1

我从 Android 开始,我可以创建一个ListView并且效果很好。此列表包含表示任务状态(活动或非活动)的图像,当单击列表项会打开一个新活动,您可以在其中修改任务,更改其数据或状态。我想确保,当用户返回任务列表时,正在工作的任务的项目将被更新(更改代表其状态的图像)。

如何在适用于所选任务的活动中做到这一点?

这是我为所选项目打开新活动的代码ListView

listTareas.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        String tarea_id = ((TextView) view.findViewById(R.id.tarea_id)).getText().toString();

        // Starting new intent
        Intent in = new Intent(getApplicationContext(), SingleItemActivity.class);
        in.putExtra(TAG_TAREA_ID, tarea_id);
        startActivity(in);
    }
});

我可以发送我想更改的drawable id,但是我该如何处理呢SingleItemActivity?那可能吗?

感谢你们。

问候。-

4

2 回答 2

1

您不能更改与 ID 关联的可绘制对象。

您应该调用startActivityForResult而不是,startActivity然后当您从SingleItemActivity该方法返回时onActivityResult将被调用。使用它来更新ListView从中填充的数据集。

notifyDataSetChanged()更新数据后,您应该调用ListView's 适配器。

于 2013-03-13T12:54:00.363 回答
0

我认为您应该使用 startActivityForResult() 而不是 startActivity() 并且您需要覆盖方法

public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        super.onActivityResult(requestCode, resultCode, intent);
于 2013-03-13T12:53:22.537 回答