如何在Android中显示活动时处理事件?

时间:2013-07-07 08:02:21

标签: android android-activity

我想在我正在用Eclipse编写的Android应用程序中显示一个活动。这就是我这样做的方式:

Intent intent = new Intent(HomeActivity.this, SecondActivity.class);
intent.putExtra("query", query);
startActivity(intent);

如何处理新活动的事件,就在我展示的地方?我为第二个活动做了一个事件监听器。如果我想处理事件,我应该创建类“SecondActivity”的实例,如下所示:

  SecondActivity act = new SecondActivity();
  act.itemselectedlisteners.add(new ListItemSelectedListener() {

        @Override
        public void onItemSelected(String key) {
            // TODO Auto-generated method stub
        }
  });

但后来我不知道如何显示对话框。如何组合这些代码?

1 个答案:

答案 0 :(得分:3)

您永远不应该使用new实例化活动。此外,在调用Activity中设置事件侦听器是没有意义的,因为它将在第二个显示时被带到后台(意味着在非运行模式下)。

在Android中执行所需操作的正确方法是使用startActivityForResult,并在您感兴趣的事件发生时让第二个活动返回到第一个适当的结果。这也将进一步解耦你的活动,因为第一个活动不需要知道第二个活动发生的任何事情。