2013-05-05 3 views
0

Чтобы использовать фрагменты в действии, нам необходимо расширить Fragment в этом действии. Но моя активность уже расширяет другой класс, а java не может распространять 2 класса. Итак, как использовать фрагменты внутри действия, которое уже расширяет другой класс?Как использовать фрагменты в активности, которая уже расширяет другой класс?

+0

Имейте объект Fragment внутри вашего собственного объекта и вызовите нужные вам методы. –

+0

Я не вижу никакого решения, если ваша базовая активность не является FragmentActivity. – rciovati

+0

@ ThorbjørnRavnAndersen Ahh так просто! Запишите это как ответ, и я приму это. –

ответ

0

Множественное наследование (более одного родительского класса) было опробовано на C++ и задало некоторые интересные проблемы, поэтому разработчики Java решили попробовать «интерфейсы».

Для вашей реальной проблемы у вас есть объект Fragment внутри вашего собственного объекта и вызовите методы, которые вам нужны.

+0

Использование этого метода дает мне nullPointerException в 'FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();' –

+0

Вам необходимо присвоить ему значение. –

+0

Я дал ему значение, как вы можете видеть ниже. Класс 'fragmenttrans' расширяет' Fragment', но остальная часть класса пуста. 'fragmenttrans ft = new fragmenttrans(); FragmentManager fragmentManager = ft.getFragmentManager(); \t fragmentTransaction = fragmentManager.beginTransaction(); Фрагмент фрагмента = новый Myfragment1(); \t \t fragmentTransaction.add (R.id.fragment_container, фрагмент, "MYLIST"); \t \t fragmentTransaction.commit(); ' –