如何在扩展Activity的类中访问布局,该类将被另一个Activity子类化?

时间:2013-04-17 16:54:39

标签: java android android-activity

我在我的Android应用程序中使用了SideNavigationBar(除了ActionBarSherlock),我对如何创建扩展SherlockActivity的类感到困惑。

由于我的所有活动都有一个SideNavigation栏和一个类似主题的ABS,因此我创建SherlockActivity的通用子类是有意义的,它初始化SideNavigation和ABS,它将在我的所有活动中保持不变,然后为我的所有活动扩展这个子类独特的活动(家庭,设置等)。因此,例如,HomeActivity扩展了ActionBarActivity,它扩展了SherlockActivity。 ActionBarActivity是我想要所有自定义ABS并初始化边栏的地方。

问题是我不知道如何从我的ActionBarActivity访问布局,这是必要的,因为那是我获得SidenavigationBar(使用findViewById)的地方。如果我在HomeActivity中这样做,我会在设置内容视图(setContentView)后使用findViewById访问布局,但由于我从未在ActionBarActivity中设置内容视图,我不太确定如何从布局中访问SidenavigationBar

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

  

但是因为我从未在ActionBarActivity中设置内容视图,所以我不确定如何从布局中访问SidenavigationBar。

如果我理解您的问题,HomeActivity会调用setContentView(),但您想要访问其父级ActionBarActivity中的布局吗? 然后在ActionBarActivity(也许是initSideNavigationBar())中创建一个新方法。只要您在HomeActivity中findViewById()之后调用它,这种新方法就可以像之前一样调用setContentView()