我正在ViewPager
的活动布局中使用ConstraintLayout
。为了限制此ViewPager
,以便在同级窗口小部件下方显示。因此,ViewPager
不能覆盖整个屏幕。
但是,在此ViewPager
的片段中,必须显示ImageView
才能覆盖整个屏幕。 ImageView
对于此ViewPager
的每个片段都是唯一的(意味着每个ImageView
实际上必须包含在每个ViewPager
的片段中)。
问题是:由于此ImageView
位于ViewPager
的片段内,该片段不能覆盖整个屏幕,因此无法为该match_parent
使用类似ImageView
的名称,因为它将与ViewPager
显然不会覆盖所有屏幕(因为它显示在同级小部件下方)。
如何使ImageView
充满整个屏幕?
当您在视图寻呼机中显示imageView片段时,可以通过编程方式更改约束。这里有一个简单的例子
fragment.xml
<androidx.constraintlayout.widget.ConstraintLayout 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">
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPagerImage"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_margin="@dimen/_10sdp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
viewpger_item.xml
<androidx.constraintlayout.widget.ConstraintLayout
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:orientation="vertical">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/imgPool"
android:layout_width="0dp"
android:layout_height="0dp"
android:scaleType="fitXY"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>