在setContentView之后获取当前活动视图

时间:2014-02-17 13:50:04

标签: android

我正在使用带有onclickitemlistener的listview,当我点击listview的项目时,它会使用setContentView(从view_list.xml到view_detail.xml)更改视图

我怎么知道我目前对我的活动的看法(清单或详细信息)。

在我的onBackPressed()中,如果我在view_detail中,我想切换到view_list 如果我已经在我的view_list布局中,我想完成()活动

public void onBackPressed() {
    if ( ?????? !== findViewById(R.id.view_list_id));
          setContentView(R.layout.view_list); 
    else
          finish();
    }

我可以使用活动而不仅仅是改变布局,但我觉得它可以这样工作。

感谢。

3 个答案:

答案 0 :(得分:1)

if ( null == findViewById(R.id.view_list_id));
    setContentView(R.layout.view_list); 
else{
    finish();
}

希望这是你想要的。这将检查视图是否包含标识为view_list_id的视图,如果是,它将完成活动,否则替换视图。正如建议所说的那样不推荐。

答案 1 :(得分:1)

请勿更改Activity的内容视图。

如果您想拥有“列表和详细信息”页面,请改用Fragments。这也允许您将列表显示为平板电脑上的侧窗格。

答案 2 :(得分:0)

更好的方法是掌握/细节流程:

如果您将Eclipse与ADT一起使用,则可以轻松实现它。只需使用主要详细信息模板创建一个新项目。

关于此的一些有用的教程: