【发布时间】:2012-06-05 17:39:36
【问题描述】:
我为导航栏编写了一个独立的自定义 OnClickListener 类(不是成员类)。请参阅下面的代码。
class MyClickHandler implements OnClickListener {
@Override
public void onClick(View view) {
Intent intent;
Context ctx = view.getContext();
int id = view.getId();
switch(id){
case R.id.app_home_id:
intent = new Intent(ctx, FormEngineMainApp.class);
ctx.startActivity(intent);
break;
case R.id.app_tasklist_id:
intent = new Intent(ctx, WorkList.class);
ctx.startActivity(intent);
break;
//more cases...
}
}
}
每个按钮都会导致不同的活动。我倾向于在调用startActivity(intent); 后完成当前活动,但我需要当前活动实例来调用finish()。我不知道如何获取当前的活动实例。唯一可能有帮助的是参数view,但我在Android Developers中查看了View的参考,但未能找到解决方案。有什么建议吗?
【问题讨论】:
-
对某个活动调用完成是否意味着您不能使用后退按钮返回该活动?
-
if(this instanceof YourActivityName)
标签: android view android-activity activity-finish