Transakcja fragmentów w systemie Android powoduje wyświetlenie pustego ekranu

Jeśli to pomoże, to, co chcę, jest podobne do tego, co zostało zrobione w tymsamouczek google

Ale przed przejściem tworzony jest fragment. Jeśli to zrobię, przejście działa dobrze; ale nie mogę użyć tego podejścia

=====

Dążąc do API 7+, staram się tylko, aby jeden Fragment był widoczny na całym ekranie i używał przycisku (przycisk narysowany, ze zdarzeniem onTouch), a następnie na przemian z drugim fragmentem i odwrotnie.

Ale albo otrzymuję pusty ekran, gdy zastępuję pierwszy fragment drugim, lub jeśli używam fragmentTransaction.show i fragmentTransaction.hide; Mogę się przełączyć dwa razy, zanim otrzymam pusty ekran. Nie chcę mieć backstacka.

Tworzę fragmenty w MainActivity's onCreate:

DiceTable diceTable = new DiceTable();
Logger logger = new Logger();
fragmentTransaction.add(diceTable, DICETABLE_TAG);
fragmentTransaction.add(logger, LOGGER_TAG);
fragmentTransaction.add(R.id.fragment_container, logger);
fragmentTransaction.add(R.id.fragment_container, diceTable);

Następnie na jednej metodzie (wywołanej z fragmentów) wykonuję przełącznik:

    Logger logger = (Logger)fragmentManager.findFragmentByTag(LOGGER_TAG);
    DiceTable diceTable = (DiceTable)fragmentManager.findFragmentByTag(DICETABLE_TAG);

    if (diceTable.isVisible()) {
        fragmentTransaction.replace(R.id.fragment_container, logger);

        fragmentTransaction.commit();
        fragmentTransaction.hide(diceTable);
        fragmentTransaction.show(logger);
    }
    else if (logger.isVisible()) {
        fragmentTransaction.replace(R.id.fragment_container, diceTable);

        fragmentTransaction.commit();
        fragmentTransaction.hide(logger);
        fragmentTransaction.show(diceTable);
    }

Nie tak powinienem to robić?

Pusty ekran podczas wymiany fragmentów

questionAnswers(2)

yourAnswerToTheQuestion