2012-04-20 45 views
1

我有3个布局; main.xml中,secondscreen.xml,thidrscreen.xmlif(当前屏幕== R.layout.main)

我要上后退按钮覆盖像 currentscreen(其屏幕打开)

if(currentscreen == R.layout.main) 
{ 
    do something 
} 
    else (currentscreen == R.layout.secondscreen) 
    { 
    do something 
    } 

我怎么能这样做?

任何帮助将不胜感激?

+1

为什么不为每个布局3个不同的活动? ,你是否想要做? – DGomez 2012-04-20 17:54:45

+0

+1以适应不同的活动。当你尝试在一个活动中做所有事情时,它变成一个痛苦管理变量和所有代码。 – dymmeh 2012-04-20 17:55:21

+0

我害怕在活动之间使用Intent。因为我有太多的东西在我的方法之间共享(这是布局).. – Merve 2012-04-20 17:57:27

回答

3

我不知道为什么你要做到这一点,就是这样,但如果你有你的布局中的最高级别视图的ID,你也许可以这样做:

if (getContentView().getId() == R.id.myTopLevelViewFromMain){ 
     // do stuff 
} else if (getContentView().getId() == R.id.myTopLevelViewFromSecondScreen){ 
     // do other stuff 
} 

或者,如您对问题的评论(这可能是更好的设计选择)建议,您可以使用多个活动。

第三种方法是在布局中使用3个顶层视图,并根据需要操纵其可见性。