android - 如何为 ViewPager2 设置背景以使图像仅在左侧具有圆角?
问题描述
我当前的实现是创建一个 ImageView 兄弟元素。如果我使用除 centerCrop 以外的任何保持纵横比的scaleType,则图像仅部分覆盖 ViewPager2 ,这不是我想要的。
(我希望图像保持它的纵横比,填充ViewPager2,同时在左侧也有圆角)
如果我将 scaleType 设置为“centerCrop”,则 ViewPager2 完全被图像覆盖,但左侧的圆角消失了。
...
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/homeViewPager"
android:layout_width="975dp"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<ImageView
android:layout_width="975dp"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:background="@drawable/rounded_corners_left_only"
android:src="@drawable/grey_hexagon_tiles"
android:scaleType="centerCrop"
/>
...
rounded_corners_left_only.xml
<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/concierge_background_color"/>
<corners
android:topLeftRadius="20dp"
android:bottomLeftRadius="20dp"
/>
</shape>
解决方案
推荐阅读
- python - 熊猫:一对多加入+剩余余额新行:拆分合同与发票
- sql - SQL 数据验证
- ansible - 当带有 var1 的语句包含在 var2 中时(可以这样做吗?)
- php - 如何创建 .json 文件并使用 PHP/Laravel 将数据写入该文件
- text - 如何在记事本++中将字符填充到不同长度的列以获取GPS坐标
- amazon-web-services - 如何通过 aws ecs cli service 命令注册多个目标组
- javascript - 想要使用平滑滚动条js绑定滚动事件
- ios - 使用 Visual Studio 在 Ios 模拟器中运行的 Xamarin App
- gitlab - 在 Gitlab 中为一项任务跳过一个阶段
- java - 它在这里说长度 = 1 和索引 = 1,我在第 28 行遇到错误,但我从 0 开始数组