获取当前设置的内容视图

时间:2012-02-06 18:09:52

标签: java android view get

我们正在创建一个包含两个主要视图的应用程序:sView和sViewSettings。如果按下Android Back按钮,我们需要一个if语句来检查当前视图是否设置为sView设置,如果是,则调用sView。

已经为后退按钮设置了监听器,只需要调用if语句来检查当前视图。

已经尝试过了 if(this.findViewById(android.R.id.content)== sViewSettings)

有关于此的任何想法吗?

感谢您的阅读, 特拉维斯

1 个答案:

答案 0 :(得分:2)

标识为android.R.id.content的视图是FrameLayout,其中包含您的内容视图。试试这个:

ViewGroup contentFrame = (ViewGroup) findViewById(android.R.id.content);
if (contentFrame.getChild(0) == sViewSettings) { ... }

但是,我建议采用略有不同的方法:使用ViewSwitcher(或任何类型的ViewAnimator)在两个主视图之间进行切换,并在代码中跟踪哪一个显示。

编辑:如果要单独加载布局,可以将id(同一个)分配给每个布局的根视图,然后使用findViewById直接检索内容视图。