Ao alternar fragmento com SwipeRefreshLayout durante a atualização, o fragmento congela, mas ainda funciona

ATUALIZAÇÃO: Eu pensei que funcionava corretamente. Mas, após alguns testes, ainda existe um problema.

Depois, criei uma versão mais simples para ver o que exatamente acontece e fico sabendo que o fragmento refrescante que deveria ter sido destacado ainda permanece lá. Ou exatamente, a visão do antigo fragmento deixado ali,Em cima de o fragmento mais recente. Como o plano de fundo do RecyclerView do meu aplicativo original não é transparente, foi o que eu disse antes.

FIM DA ATUALIZAÇÃO

eu tenho umMainActivity com layout como este:

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout"
android:layout_width="match_parent" android:layout_height="match_parent">

    <!-- As the main content view, the view below consumes the entire
         space available using match_parent in both dimensions. -->
    <FrameLayout android:id="@+id/container" android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!-- android:layout_gravity="start" tells DrawerLayout to treat
         this as a sliding drawer on the left side for left-to-right
         languages and on the right side for right-to-left languages.
         If you're not building against API 17 or higher, use
         android:layout_gravity="left" instead. -->
    <!-- The drawer is given a fixed width in dp and extends the full height of
         the container. -->
    <fragment android:id="@+id/navigation_drawer"
        android:layout_width="@dimen/navigation_drawer_width" android:layout_height="match_parent"
        android:layout_gravity="start" tools:layout="@layout/fragment_navigation_drawer" />

</android.support.v4.widget.DrawerLayout>

O fragmentoContentView Eu uso para preencher@id/container está configurado como:

<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/contentView"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v7.widget.RecyclerView
    android:id="@+id/tweet_list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/grey_300"/>

</android.support.v4.widget.SwipeRefreshLayout>

E aqui estáonCreateView() doContentView

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View inflatedView = inflater.inflate(R.layout.fragment_content, container, false);

    mRecyclerView = (RecyclerView) inflatedView.findViewById(R.id.tweet_list);
    mRecyclerView.setHasFixedSize(false);

    mLinearLayoutManager = new LinearLayoutManager(getActivity().getApplicationContext());
    mRecyclerView.setLayoutManager(mLinearLayoutManager);

    mTweetList = new ArrayList<Tweet>;
    mAdapter = new TweetAdapter(mTweetList);
    mRecyclerView.setAdapter(mAdapter);
    mRecyclerView.setItemAnimator(new DefaultItemAnimator());

    mSwipeRefreshLayout = (SwipeRefreshLayout) inflatedView.findViewById(R.id.contentView);
    mSwipeRefreshLayout.setOnRefreshListener(
        ...
    );
    return inflatedView;
}

Então emMainActivity Eu mudo o conteúdo para exibir alternando diferentesContentView. Tudo parece bom, exceto uma coisa: quando eu mudarContentView fragmentos DURANTE a atualização pela gaveta de navegação e o conteúdo congela. Mas, na verdade, tudo funciona como de costume, exceto que você não pode vê-lo.

questionAnswers(8)

yourAnswerToTheQuestion