2016-01-13 77 views
1

我正在开发一个应用程序,它具有相同的操作栏,适用于所有的Activities。唯一改变的是菜单,它可以很容易地建立在dinamically。如何在整个代码中处理Android ActionBar代码?

目前,我为每个Activity的每个工具栏都有一个xml文件,但是有大量代码重复考虑代码。我应该如何处理它?

我想过制作一个单独的xml文件并将其包含在Activities布局中。但是,有很多以编程方式制作的东西,比如按钮,标题和菜单的定义。这些方法位于活动onCreate中。如何重新使用这段代码?

+1

将您的工具栏中的所有员工移动到基类中,例如BaseActivity并继承其中的所有活动 – gio

+0

@gio是的,但我该如何配置每种情况下的toobar?我的意思是,在引用视图和设置/从他们的东西之前,我不应该'setContentView'? – RafaelC

+0

当然,你可以在onPostCreate方法做到这一点 – gio

回答

2

林不知道如果我正确理解你,但也许使活动(或如果你使用AppCompatActivity等)后延长的类例如class MyCustomActivity extends AppCompatActivity实现那里你的操作栏,然后在每个新的活动类,你需要该ActionBar只是扩展MyCustomActivity。在这个类中,您可以实施一些公共方法来设置子类中的菜单等。

+0

是的,但我将如何配置每个案件的toobar?我的意思是,在引用视图和设置/从他们的东西之前,我不应该'setContentView'? – RafaelC

+0

正如gio所说,你可以通过覆盖onPostCreate来设置它 – Arthez