У меня есть приложение. используя Фрагменты. Основная активность начинается с 2 фрагментов. Один из этих фрагментов содержит кнопку, которая используется для добавления 3'rd фрагмента во время выполнения, как это:Сохранение фрагмента, добавленного во время выполнения
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Activity activity = getActivity();
if (fragment3 == null) {
getFragmentManager()
.beginTransaction()
.add(R.id.fragment_content3, new ThirdFragment())
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE)
.commit();
}
ThirdFragment класс выглядит следующим образом:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.v(getTag(), "FRAG onCreate CALLED!");
this.setRetainInstance(true);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.third_fragment, container, false);
return view;
Проблема заключается в том, что я не могу понять как сохранить просмотр этого фрагмента при восстановлении активности. Я попытался @Override метод onCreate() и использовать setRetainInstance (true) безрезультатно.
Итак, мой вопрос:
Что такое правильный подход, чтобы динамически (во время выполнения) добавлен фрагмент из удаляется, когда активность пересоздался?