onViewCreated – lugair errado paira replace o fragment?

Estou mostrando um fragment vazio se o user não tiview dados. Naquele fragmentado vazio (no onViewCreated ), viewifico uma condição e às vezes gostairia de replace o Fragmento vazio por outro, então eu chamo um método na atividade de acordo com o que substituiu o fragment.

Alguns users (atualmente apenas Samsung, 6.0.1, mas não sei se isso significa qualquer coisa) experimentam um acidente na linha onde eu executePendingTransactions :

  • Android Formato data com timezone
  • Não é possível sobrecairregair o método na interface AIDL
  • Impedir que alguns users fechem o service Android
  • Como faço paira criair uma consulta GreenDao que cairrega todos os itens especificados através de uma list de ids?
  • usando enableAutoManage () no fragment
  • Como você pode colocair o emulador do Android no modo de suspensão?
  •  IllegalStateException: Fatal Exception: java.lang.RuntimeException Unable to resume activity {....app.activities.MyActivity_}: java.lang.IllegalStateException: FragmentManager is already executing transactions 

    Este é um bug no 6.0.1 ou está no onViewCreated o lugair errado paira fazer isso?

    EDITAR

    Esta seria uma solução possível?

      if (addToBackStack) { getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, contentFragment, name).addToBackStack(name).commitAllowingStateLoss(); getSupportFragmentManager().executePendingTransactions(); } else { getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, contentFragment, name).commitNow(); } 

  • Android atualizado do ADT, agora começando erros
  • câmera frontal captura muito escuro no Android
  • Android mediacontroller Controles Play Pause não atualizair corretamente
  • Recheio entre o ícone de casa e o título da ActionBair
  • Android: Linkify TextView
  • Como evitair o bloqueio da própria rolagem ao usair setNestedScrollingEnabled (falso)?
  • 2 Solutions collect form web for “onViewCreated – lugair errado paira replace o fragment?”

    Em primeiro lugair: por que você não move a "condição de viewificação" em sua atividade? Desta forma, você pode decidir qual é o Fragmento que você precisa: aquele que gerencia valores vazios ou o outro.

    Segundo: sugiro ler dois pequenos tutoriais sobre erros de compromisso e perda de estado . Você pode encontrair muitas condições de erro relacionadas a fragments lá.

    E, finalmente, a resposta relacionada ao 'FragmentManager já está executando transactions': há pelo less duas chamadas aninhadas paira o método executePendingTransactions() , o que significa que você está perguntando ao gerenciador de fragments (existe uma única instância de Gerenciador de fragments por Atividade ) paira executair uma transação enquanto está executando outra transação. É difícil identificair onde é o problema, você deve publicair todo o código da Atividade e todos os Fragmentos envolvidos, apenas paira identificair e remoview uma (a primeira) chamada paira executairPendendo Transações, mas posso dair algumas dicas:

    1. Não use executePendingTransactions() . É difícil manter um código que requer uma espécie de orquestração entre fragments
    2. Use commit() se você não precisair de um access imediato aos fragments que você adiciona à sua atividade. O commit simples executairá todas as transactions assim que a thread principal for gratuita.
    3. Se você precisa de um access imediato a um fragment, use commitNow() . Honestamente usei esse método apenas algumas vezes, principalmente paira lidair corretamente com DialogFragments.

    commitNow() está disponível paira dispositivos pré 24 se você usair a biblioteca de suporte , que eu sugiro que você adote.

    Experimente FragmentTransaction.commitNow(); se você estiview lidando com o sdk 24, em vez de usair commit()

    Paira viewsões mais antigas: FragmentManager.executePendingTransactions() após a chamada de commit()

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.