"Kayan görünüm" olarak bir parçayı barındıran bir uygulama düzeniyle bir koordinatör düzeni kullanmaya çalışıyorum. parçası şöyle bir düğme tutan bir recyclerView ve bir alt hizalanmış düzen oluşur:"Kayan görünüm" olarak parça ile koordinatör düzeni nasıl kullanılır?
Ancak alt bölümde varsayılan olarak gizlidir:
ve sadece gösterir kaydırdıktan sonra.
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TestFragment fragment = (TestFragment) getFragmentManager().findFragmentByTag("Test");
if (fragment == null)
fragment = new TestFragment();
getFragmentManager().popBackStack();
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment, "Test");
fragmentTransaction.commit();
}
Etkinlik düzeni: Etkinliğimi sınıfından itibaren
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_scrollFlags="enterAlways|scroll"
app:tabGravity="fill"
app:tabMode="fixed"/>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
</RelativeLayout>
Fragment düzeni:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/bottomView"
android:scrollbars="vertical"
android:visibility="visible"/>
<RelativeLayout
android:id="@+id/bottomView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="#d4285d"
app:layout_scrollFlags="enterAlways">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Do something..."
android:textSize="14sp"/>
</RelativeLayout>
</RelativeLayout>
parçası hep alt bar olması için buraya uç hedefidir Ekranda ve geri dönüşümcü görünümü, appbar'ı kaydırıyor.
Bu mümkün mü?
Herkese teşekkürler!
Aynı problemim var. Ben 'yarılanma' aktivitesine (ve Fragmanı değil) ve Koordinatörün Dışına 'yerleştirerek' yarıya 'çözdüm. Şimdi kaydırma yaparken bile görünür kalır. Bununla birlikte, bazen de onu gizlemek istiyorum (kaydırma yaparken değil, bir araç çubuğu düğmesine bastığımda) ve bu durumda kaydırma görünümü (RecyclerView) geride kalan alanı doldurmaz, bunun yerine 'boş' kalır (beyaz). Ayrıca, 'bottomView', CoordinatorLayout dışında ve LinearLayout'un altında olsa bile, kaydırma görünümünün üstünde görünür. Kafam karıştı ... –
Nick, şu anda aynı yaklaşımı kullanmaya son verdim, diploma Etkinliğe dahil edildi. Bunu, parçadan erişip orada bir görünüm eklediğim Etkinlik'e bir FrameLayout ekleyerek genel bir şekilde ele aldım. Bu dağınık ama etrafta dolaşamadım. Bazen bu çubuğu gizlemekle uğraşmak zorunda değilim (parçaları değiştirdiğimde tamamen gizlemekten başka), bu yüzden bu konu hakkında yorum yapamam ... üzgünüm. – Zach