Чтобы использовать фрагменты в действии, нам необходимо расширить Fragment
в этом действии. Но моя активность уже расширяет другой класс, а java не может распространять 2 класса. Итак, как использовать фрагменты внутри действия, которое уже расширяет другой класс?Как использовать фрагменты в активности, которая уже расширяет другой класс?
ответ
Множественное наследование (более одного родительского класса) было опробовано на C++ и задало некоторые интересные проблемы, поэтому разработчики Java решили попробовать «интерфейсы».
Для вашей реальной проблемы у вас есть объект Fragment внутри вашего собственного объекта и вызовите методы, которые вам нужны.
Использование этого метода дает мне nullPointerException в 'FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();' –
Вам необходимо присвоить ему значение. –
Я дал ему значение, как вы можете видеть ниже. Класс '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(); ' –
Имейте объект Fragment внутри вашего собственного объекта и вызовите нужные вам методы. –
Я не вижу никакого решения, если ваша базовая активность не является FragmentActivity. – rciovati
@ ThorbjørnRavnAndersen Ahh так просто! Запишите это как ответ, и я приму это. –