Я думаю, что есть решение моей проблемы наследования, но я не могу ее найти.Обход множественного наследования в 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
Как сделать, чтобы иметь только один класс, но который ns код для Activity
и TabActivity
?
Спасибо.
какая ОС вы нацеливаете? Это решается с помощью фрагментов в OS 3+ – L7ColWinters
Я нацелен на Android 2.1. –