android - ImageView src 将图像移动到中心,在更改宽度和高度时使两侧可见
问题描述
请不要将此标记为重复,因为我无法找到解决方案。
嗨,我正在尝试添加一些背景颜色的 src 图像
这是我正在做的
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="20dp"
android:background="@drawable/bg_layout_corners"
android:backgroundTint="@color/color_fbfbfa"
android:gravity="center">
<ImageView
android:id="@+id/iv_dashboard_niggle"
android:layout_width="wrap_content"
android:layout_height="200dp"
android:layout_centerHorizontal="true"
android:layout_centerInParent="true"
android:layout_centerVertical="true"
android:scaleType="centerInside"
android:background="@color/colorAccent"
android:src="@drawable/niggle2_3_3_3" />
</RelativeLayout>
这是我得到的输出
当我尝试减小 imageView 的宽度或高度时,实际图像位于中心并且可以看到一些边框。
我还检查了 scaleType="center",这也不起作用
请帮我。
解决方案
您想在图像视图中设置的图像需要具有相同的纵横比才能完全适合而不应用 scaleType...
例如
如果要设置高宽比为 1:1 的方形图像,则 ImageView 比例需要为 1:1
好吧,但是如果图像不符合比例,我们也有 ScaleType,那么我们可以通过调整图像大小来设置比例类型以匹配图像视图的大小
在您的情况下,这完全取决于您要展示的内容。
如果您不想要背景边框,则只需使用以下方法将背景颜色设置为透明
android:background="@android:color/transparent"
如果您不想使用缩放类型,最好的方法是根据纵横比定义 ImageView 大小
推荐阅读
- pandas - 如何将每行列表中的元素与熊猫匹配
- vue.js - 猫头鹰轮播不适用于 vuejs 和 axios 中的循环
- javascript - Service Worker 文件找不到导入的文件
- r - 用于线性模型的 R 中 K 折交叉验证的通用函数
- apl - 将单例向量值分配给 Dyalog APL 中尚未定义的单个变量
- javascript - 无法在 Nuxt 页面/组件中使用新安装的插件(节点模块)
- angular - Angular 正式 5.10.3 更改时的自定义切换事件
- reactjs - 为 react-datepicker 禁用移动设备上的键盘
- node.js - nodejs在变量中存储函数的返回值给了我未定义的
- c - 如何使用带有 C 的 WINAPI 实现局域网唤醒