我有我的启动程序活动,它会生成一个ListView。Android活动ListView LoaderManager记住以前状态的导航
现在在ListView上我有一个setOnItemClickListener,它将基本上将位置和ID传递给一个新的活动。
mList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(ActivityHome.this, ActivityDetail.class);
intent.putExtra("cm_position", position);
intent.putExtra("cm_id", id);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
});
现在ActivityHome中的ListView显示在ListView中间的某个地方。
当我在ActivityDetail中,并且我有一个actionBar.setDisplayHomeAsUpEnabled(true);所以执行时,它下面会回到ActivityHome
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
Intent intent = new Intent(this, ActivityHome.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
的问题是在ListView的位置丢失,ListView控件返回到顶部。有没有办法停止onCreate()从执行,只是没有Activity的ActivityDetail,只是回到ActivityHome它是什么...我希望你明白。
我想我可能已经设置的标志错误的意图......