java - 在 GridLayout Android 中将图像拉伸到屏幕大小
问题描述
我想伸展我的卡响应。我有一个 3 列的 GridLayout。卡片的 scaleTypes 是 fitXY。
我如何自动缩放卡片。不知何故 android:strechmode 没有找到。
XML:
<androidx.gridlayout.widget.GridLayout
android:id="@+id/thirdRow"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:columnCount="3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:rowCount="1">
<ImageView
android:id="@+id/imageView9"
android:scaleType="fitXY"
app:layout_columnWeight="0"
app:layout_gravity="center"
app:srcCompat="@drawable/back" />
<ImageView
android:id="@+id/imageView10"
android:scaleType="fitXY"
app:layout_columnWeight="0"
app:layout_gravity="center"
app:srcCompat="@drawable/back" />
<ImageView
android:id="@+id/imageView11"
android:scaleType="fitXY"
app:layout_columnWeight="0"
app:layout_gravity="center"
app:srcCompat="@drawable/back" />
</androidx.gridlayout.widget.GridLayout>
有人有任何想法吗?
非常感谢
解决方案
使用水平链的 ConstraintLayout 提供了类似的布局控制,但性能大大提高。
<?xml version="1.0" encoding="utf-8"?>
<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"
tools:context=".com.example.actorsapp.activity.MainActivity">
<ImageView
android:id="@+id/imageView9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/imageView10"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/back" />
<ImageView
android:id="@+id/imageView10"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:layout_constraintBottom_toBottomOf="@id/imageView9"
app:layout_constraintEnd_toStartOf="@id/imageView11"
app:layout_constraintStart_toEndOf="@id/imageView9"
app:layout_constraintTop_toTopOf="@id/imageView9"
app:srcCompat="@drawable/back" />
<ImageView
android:id="@+id/imageView11"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:layout_constraintBottom_toBottomOf="@id/imageView9"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/imageView10"
app:layout_constraintTop_toTopOf="@id/imageView9"
app:srcCompat="@drawable/back" />
</androidx.constraintlayout.widget.ConstraintLayout>
推荐阅读
- php - SEOPress 插件不适用于 Wordpress 5.7
- java - 在 Android 画布上设置屏幕范围
- sequelize.js - Sequelize 数据检索向上
- option - 用于切换 TMUX 窗口的“ALT”键映射在 Mac Book 上不起作用
- symfony - Symfony 5.2 验证 json_login 请求
- mongodb - 将字符串附加到 MongoDB 中数组字段中的所有值
- mybatis - mybatis 支持检查属性是否存在?
- html - 嵌入在对象标签中的 txt 文件在应用程序运行时会出现编码错误?
- bash - AWK 找到一种方法来打印包含逗号分隔字符串中的单词的行
- javascript - 如何获取用户正在玩的游戏?不和谐.js