Java Coordinatorlayout视图寻呼机内部Coordinatorlayout
我正在开发一个Android应用程序。 在这个项目中,考虑以下条件: 文件的内容按顺序加载。 在第一个文件中有一个CoordinatorLayout,在子片段中也有一个CoordinatorLayout 在这个片段中,我使用了一个ViewPager,它负责显示两个不同的片段。 不幸的是,滚动并没有像它应该的那样发生,而且很明显,ViewPager的高度并没有自动填满整个屏幕 请引导我 activity_main.xmlJava Coordinatorlayout视图寻呼机内部Coordinatorlayout,java,android,xml,kotlin,Java,Android,Xml,Kotlin,我正在开发一个Android应用程序。 在这个项目中,考虑以下条件: 文件的内容按顺序加载。 在第一个文件中有一个CoordinatorLayout,在子片段中也有一个CoordinatorLayout 在这个片段中,我使用了一个ViewPager,它负责显示两个不同的片段。 不幸的是,滚动并没有像它应该的那样发生,而且很明显,ViewPager的高度并没有自动填满整个屏幕 请引导我 activity_main.xml <?xml version="1.0" encod
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/cl_activityMain_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".project.feature.main.MainActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bnv"
style="@style/NavigationView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
app:labelVisibilityMode="unlabeled"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:menu="@menu/bottom_navigation_menu" />
<androidx.fragment.app.FragmentContainerView
android:id="@+id/fcv"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@+id/bnv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<include
android:id="@+id/unauthorized_view"
layout="@layout/layout_unauthorized_main"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@+id/fcv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<FrameLayout
android:id="@+id/fl_update_background"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/white_solid"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
SomeFragment.xml
<?xml version="1.0" encoding="utf-8"?>
<com.pixelco.hitrav.framework.view.NestedCoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".project.feature.ship.detail.ShipDetailFragment">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar">
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:contentScrim="@color/toolbar_collapsing"
app:expandedTitleMargin="40dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:titleEnabled="true"
tools:title="Ship Name">
<FrameLayout
android:id="@+id/fl_image_container"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/rv_image"
android:layout_width="match_parent"
android:layout_height="256dp"
android:clipToPadding="false"
android:orientation="horizontal"
android:scrollbars="vertical"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/row_ship_image" />
<TextView
android:id="@+id/tv_slider_counter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal|end|bottom"
android:layout_marginEnd="24dp"
android:layout_marginBottom="36dp"
android:background="@drawable/bg_slider_counter"
android:gravity="center"
android:minWidth="64dp"
android:minHeight="24dp"
android:textColor="@color/white_solid"
tools:text="1 of 5" />
</FrameLayout>
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:contentInsetStart="48dp"
android:contentInsetLeft="0dp"
android:contentInsetEnd="0dp"
android:contentInsetRight="0dp"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
app:contentInsetStart="48dp"
app:contentInsetStartWithNavigation="56dp"
app:layout_collapseMode="pin"
app:titleTextColor="@color/white_solid" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:orientation="horizontal">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<CheckBox
android:id="@+id/cb_shipLikesCount"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:button="@drawable/checkbox_background_selector_like"
android:buttonTint="@color/white_solid"
android:paddingStart="4dp"
android:paddingTop="4dp"
android:textColor="@color/white_solid"
android:textSize="16sp"
app:layout_collapseMode="pin"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_favoriteCapacity"
tools:text="755" />
</FrameLayout>
<FrameLayout
android:id="@+id/view_bookMark"
android:layout_width="48dp"
android:layout_height="56dp"
android:layout_gravity="end"
android:padding="8dp">
<CheckBox
android:id="@+id/cb_favorite"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:button="@drawable/checkbox_background_selector_favorite"
android:buttonTint="@color/white_solid"
android:paddingStart="4dp"
android:paddingTop="4dp"
android:textColor="@color/text_light_gray"
android:textSize="16sp"
app:layout_collapseMode="pin"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_favoriteCapacity"
tools:text="755" />
</FrameLayout>
</LinearLayout>
<FrameLayout
android:id="@+id/btn_back"
android:layout_width="56dp"
android:layout_height="match_parent"
android:layout_gravity="start"
app:layout_collapseMode="pin">
<ImageView
android:id="@+id/iv_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
app:srcCompat="@drawable/ic_back_light" />
</FrameLayout>
</FrameLayout>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:id="@+id/cl_parent"
android:overScrollMode="never"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<com.google.android.material.tabs.TabLayout
android:id="@+id/tl_details"
style="@style/ShipDetailTabLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="12dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view_shadow"
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="@drawable/toolbar_dropshadow"
app:layout_constraintTop_toBottomOf="@id/tl_details" />
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/vp_details"
android:layout_width="0dp"
android:layout_height="0dp"
android:paddingBottom="112dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/view_shadow" />
</androidx.constraintlayout.widget.ConstraintLayout>
<com.google.android.material.card.MaterialCardView
android:id="@+id/btn_fragment_ship_detail_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_vertical"
android:layout_marginHorizontal="12dp"
android:layout_marginVertical="12dp"
android:background="@color/white_solid"
android:backgroundTint="@color/white_solid"
android:orientation="horizontal"
android:weightSum="2"
app:cardBackgroundColor="@color/white_solid"
app:cardElevation="8dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="56dp"
android:layout_margin="16dp"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:gravity="center_vertical"
android:padding="8dp"
android:text="@string/fragment_ship_detail_desc"
android:textColor="@color/trolley_gray"
android:textSize="12sp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_check_availability"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:background="@color/gold"
android:text="@string/fragment_ship_detail_check_availability"
android:textAllCaps="false"
android:textSize="13sp"
app:backgroundTint="@color/gold" />
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
</com.pixelco.hitrav.framework.view.NestedCoordinatorLayout>
Fragment_a.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:overScrollMode="never"
android:paddingBottom="112dp"
android:fillViewport="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".project.feature.ship.detail.ShipDetailFragment">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_shipDetails"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="27dp"
android:layout_marginTop="26dp"
android:layout_marginEnd="27dp"
android:textColor="@color/black_solid"
android:textSize="14sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="" />
<TextView
android:id="@+id/tv_specifications"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="16dp"
android:text="@string/ffragment_ship_detail_specifications"
android:textColor="@color/blue"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_shipDetails" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_specifications"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="15dp"
android:layout_marginEnd="16dp"
android:clipToPadding="false"
android:orientation="vertical"
android:overScrollMode="never"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:scrollbars="vertical"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_specifications"
tools:itemCount="8"
tools:listitem="@layout/row_ship_specification" />
<TextView
android:id="@+id/tv_parking_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="8dp"
android:text="@string/fragment_ship_detail_parking"
android:textColor="@color/blue"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/rv_facilities" />
<TextView
android:id="@+id/tv_parking_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="32dp"
android:layout_marginTop="16dp"
android:textColor="@color/black_solid"
android:textSize="14sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_parking_title"
tools:text="Speed Bebek" />
<TextView
android:id="@+id/tv_facilities"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="8dp"
android:text="@string/fragment_ship_detail_accessories"
android:textColor="@color/blue"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/rv_specifications" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_facilities"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="14dp"
android:layout_marginTop="15dp"
android:layout_marginEnd="16dp"
android:clipToPadding="false"
android:orientation="vertical"
android:overScrollMode="never"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:scrollbars="vertical"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_facilities"
tools:itemCount="8"
tools:listitem="@layout/row_ship_accessories" />
<include
android:id="@+id/prg_fragment_ship_detail_loading"
layout="@layout/loading_view"
android:layout_height="0dp"
android:visibility="gone"
android:layout_width="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>
Fragment_b.xml:
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.cardview.widget.CardView
android:id="@+id/cardView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="40dp"
android:layout_marginEnd="24dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_rate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="40dp"
android:layout_marginTop="16dp"
android:text="@string/fragment_ship_detail_rate"
android:textColor="@color/text_links"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_review"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="40dp"
android:layout_marginTop="8dp"
android:textColor="@color/text_links"
android:textSize="12sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_rate"
tools:text="@string/ship_detail_review_count" />
<TextView
android:id="@+id/tv_rateTotal"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="32dp"
android:background="@color/blue"
android:gravity="center"
android:textColor="@color/text_ship_rate"
android:textSize="18sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="6.7">
</TextView>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_rate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipToPadding="false"
android:paddingTop="8dp"
android:paddingBottom="36dp"
android:scrollbars="vertical"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_review"
tools:itemCount="5"
tools:listitem="@layout/row_ship_score" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
<TextView
android:id="@+id/tv_comment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="40dp"
android:text="@string/ship_detail_review_comments"
android:textColor="@color/text_links"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/cardView" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_comment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:clipToPadding="false"
android:paddingTop="8dp"
android:paddingBottom="36dp"
android:scrollbars="vertical"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_comment"
tools:itemCount="3"
tools:listitem="@layout/row_ship_comment" />
<androidx.constraintlayout.widget.Group
android:visibility="gone"
android:id="@+id/gp_rate_comment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="cardView,tv_comment,rv_comment" />
<FrameLayout
android:id="@+id/view_empty_State"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/white_solid"
android:orientation="horizontal"
android:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
app:srcCompat="@drawable/ic_no_rate_comment" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="16dp"
android:gravity="center"
android:text="@string/fragment_ship_review_no_review_comment" />
</LinearLayout>
</FrameLayout>
<include
android:id="@+id/loading_view"
layout="@layout/loading_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white_solid"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>