У меня есть действие, в котором есть фрагмент.
XML:
<fragment android:name="com.example.androidcalculator.ResultFragment"
android:id="@+id/result_fragment"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
И я хочу вызвать метод из ResultFragment из метода в Activity, но getSupportFragmentManager «не существует»:
FragmentManager fragMan = getSupportFragmentManager();
Как я могу это решить?
FragmentManager
устарел.расширить класс
AppCompatActivity
вместоActivity
источник
получить текущую активность от родителя, а затем использовать этот код
getActivity().getSupportFragmentManager()
источник
импорт
import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager;
источник
FragmentActivity
.Просто используйте
Всегда помните, что при доступе к расширению фрагмента в MainLayout используйте Casting или
getActivity()
.источник
расширять
FragementAvtivity
вместоActivity
источник
Это сработало для меня. Запуск Android API 19 и выше.
FragmentManager fragMan = getFragmentManager();
источник
getCurrentActivity().getFragmentManager()
источник
Вместо
extends Fragment
использовать
extends android.support.v4.app.Fragment
У меня это работает. для * API14 и выше
источник
я использовал
FragmentActivity
TabAdapter = new TabPagerAdapter(((FragmentActivity) getActivity()).getSupportFragmentManager());
источник