【发布时间】:2014-10-09 14:34:12
【问题描述】:
在我的应用程序中,我创建了一个 BaseActivity,我从中扩展了我的所有活动。
在 BaseActivity 中,我通过以下语句识别正在运行的活动:this.getClass().getSimpleName() (ex: ActivityA)
直到我打开新活动(ActivityB、ActivityC 等...),一切正常。
当我使用手机的返回按钮时出现问题(我从activityC 回到ActivityB)。在这种情况下,ActivityB 可以从堆栈中正确恢复,但在BaseTable(ActivityB)中,this.getClass().getSimpleName() 的值仍然是ActivityC。
如何避免这个问题?你知道你帮我吗?
【问题讨论】:
-
您能否提供一些代码,以说明如何以及在何处调用 this.getClass().getSimpleName()?
-
在我的 BaseActivity 的 onResume 方法中...
public class BaseActivity extends Activity implements ConnectorDelegate { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MyApplication.getConnectionManager().setDelegate(this); } @Override 受保护的无效 onResume() { super.onResume(); MyApplication.getConnectionManager().startListening(this); currentActivityName=this.getClass().getSimpleName(); } ......
标签: android