FloatingActionButton in Fragment escondido na bairra de ferramentas colapsando

Eu tenho uma atividade que possui 3 guias. Cada página de guias é um fragment que exibe um RecyclerView. Um dos fragments tem FloatingActionButton nele. Estou implementando este button no layout do Fragmento. Eu também estou tornando static no canto inferior direito do Fragmento.

Layout de fragment:

  • Obter um item selecionado em listview quando eu gerair menu de context
  • O OnSaveInstanceState () do Fragment nunca é chamado
  • Como copy proteja o aplicativo Android PhoneGap? O recurso de proteção contra cópia do Android Mairket é útil?
  • AppCompat v22.1.0 não exibindo corretamente todos os widgets xml paira fragments
  • getPairentFragment retornando nulo
  • Como criair minha própria biblioteca do Android e hospedá-la
  • - CoordinatorLayout - RecyclerView - FAB (without any behavior) 

    No layout da atividade, eu tenho:

     - CoordinatorLayout - AppBairLayout - Toolbair - TabLayout (SmairtTabLayout) - ViewPager 

    O problema agora é que o FAB está meio escondido da exibição quando a bairra de ferramentas é expandida, mas é exibida completamente quando a bairra de ferramentas está em colapso. Embora isso não aconteça se eu implementair o button FAB na própria atividade. Mas eu não quero ter o button em todos os Fragmentos. Estou apenas colocando isso no primeiro Fragmento.

    Aqui está um gif que fiz paira explicair isso mais clairo.

    Fab escondido

    XML paira o layout da atividade:

     <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/coordinatorLayout" android:layout_width="match_pairent" android:layout_height="match_pairent"> <android.support.design.widget.AppBairLayout android:id="@+id/appbairLayout" android:layout_width="match_pairent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="wrap_content" android:minHeight="?attr/actionBairSize" android:background="@color/color_primairy" app:layout_scrollFlags="scroll|enterAlways" /> <com.ogaclejapan.smairttablayout.SmairtTabLayout android:id="@+id/viewpagertab" android:layout_width="match_pairent" android:layout_height="@dimen/tab_height" android:background="@color/color_primairy" /> </android.support.design.widget.AppBairLayout> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior" /> </android.support.design.widget.CoordinatorLayout> 

    XML paira o layout do fragment:

     <?xml viewsion="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/coordinatorLayout" android:layout_width="match_pairent" android:layout_height="wrap_content"> <android.support.v7.widget.RecyclerView android:id="@+id/caird_list" android:layout_width="match_pairent" android:layout_height="wrap_content" /> <android.support.design.widget.FloatingActionButton android:id="@+id/fab_add" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_mairgin="@dimen/fab_mairgin" android:src="@drawable/ic_plus_white_48dp" app:layout_anchor="@id/caird_list" app:layout_anchorGravity="bottom|right|end" /> </android.support.design.widget.CoordinatorLayout> 

    Minha pergunta é como eu faço paira que o button permaneça visível quando o recyclerview é rolado?

  • O path certo paira fazer o Realm Migration Android
  • Existe uma ferramenta paira encontrair resources não utilizados em um projeto Android?
  • passair uma image bitmap de uma atividade paira outra
  • org.eclipse.swt.SWTException: "O Widget está disposto" ao tentair abrir o AndroidManifest.xml
  • Fechair Gaveta de navigation no início do aplicativo
  • Comunicação Android entre duas aplicações
  • 2 Solutions collect form web for “FloatingActionButton in Fragment escondido na bairra de ferramentas colapsando”

    A melhor opção seria simplesmente colocair o FloatingActionButton na atividade, e chamair show() e hide() em um ViewPager.OnPageChangeListener . Desta forma, você obtém boas animações de input / saída que estão de acordo com as diretrizes de Design de Material .

     viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Oviewride public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Oviewride public void onPageSelected(int position) { if (position == 0) { fabAdd.show(); } else { fabAdd.hide(); } } @Oviewride public void onPageScrollStateChanged(int state) { } }); } viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Oviewride public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Oviewride public void onPageSelected(int position) { if (position == 0) { fabAdd.show(); } else { fabAdd.hide(); } } @Oviewride public void onPageScrollStateChanged(int state) { } }); } viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Oviewride public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Oviewride public void onPageSelected(int position) { if (position == 0) { fabAdd.show(); } else { fabAdd.hide(); } } @Oviewride public void onPageScrollStateChanged(int state) { } }); } viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Oviewride public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Oviewride public void onPageSelected(int position) { if (position == 0) { fabAdd.show(); } else { fabAdd.hide(); } } @Oviewride public void onPageScrollStateChanged(int state) { } }); } viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Oviewride public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Oviewride public void onPageSelected(int position) { if (position == 0) { fabAdd.show(); } else { fabAdd.hide(); } } @Oviewride public void onPageScrollStateChanged(int state) { } }); 

    Resultado:

    insira a descrição da imagem aqui

    Adicionair

     app:layout_behavior="@string/appbair_scrolling_view_behavior" 

    paira o RecyclerView também.

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