我認爲有一個解決方案來繼承問題,但我找不到它。在Java中繞過多繼承
我正在開發一個Android應用程序(目標是Android 2.1),它在大多數頁面上重複使用SlidingDrawer
(用於我的菜單)。爲了避免在所有活動上初始化它,我創建了一個DefaultActivity
來完成此操作。它運行良好,直到我不得不擴展TabActivity
,因爲Java不支持多繼承。
基本上我有以下默認活動
public class DefaultActivity extends Activity{
// Declarations
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Some code
}
@Override
protected void onPause() {
// Some code
}
protected void initializeMenu() {
// Init
}
}
現在,當我有一個活動我下面
public class SomeActivity extends DefaultActivity{
// Declarations
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.myLayout);
super.initializeMenu();
}
}
但是我有一個延伸的看法TabActivity
,所以我不能做
public class SomeOtherActivity extends TabActivity, DefaultActivity
我該怎麼做才能只有一個類來擴展,但哪些contai ns代碼爲Activity
和TabActivity
?
謝謝。
您定位的操作系統是什麼?這是通過使用OS 3 + – L7ColWinters 2012-01-31 15:09:43
中的片段解決的,我針對的是Android 2.1。 – 2012-01-31 15:11:34