在原始活动中打开一个新活动并完成原始活动

时间:2013-07-30 14:46:25

标签: android

我是Android应用程序开发的新手。当ListView在单击某个项目时触发操作时,我尝试创建一个新活动。

在测试期间,我的代码正常运行。但我对是否应该使用finish()关闭当前活动感到有点困惑。哪一个更好?从性能或资源使用的角度来看?

以下是我的一些代码:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, bank_name);
    lv1.setAdapter(adapter);
    lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
                public void onItemClick(AdapterView<?> adapter, View view, int position, long arg)   {

                       // TODO Auto-generated method stub
                      if (position == 0) {
                          return_to_config(view);
                      }


                }
    });


public void return_to_config(View view){
       Intent intent = new Intent(this, ConfigActivity.class);
       startActivity(intent);
       *this.finish();*
}

2 个答案:

答案 0 :(得分:1)

在这种情况下,我认为您不必担心资源或性能问题。您应该最关心您想要的功能和用户期望的功能。

如果他们点击列表项并打开说明该列表项的详细Activity,那么他们按下后退按钮然后他们可能希望返回到该列表。如果您致电finish(),则用户将在此之前返回Activity,或者如果没有其他用户,则他们将退出该应用。这就是你想要的吗?

因此,我对您的应用知之甚少,我会说删除finish()

public void return_to_config(View view){
   Intent intent = new Intent(this, ConfigActivity.class);
   startActivity(intent);

}

但如果用户在按“返回”按钮时不希望返回此处,则将其保留在那里

答案 1 :(得分:0)

您可以在那里覆盖onPause()和write finish(),而不是这样做。效率更高