2016-01-13 83 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