imageview 宽高比
时间: 2023-07-29 18:07:21 浏览: 148
如果想要设置 ImageView 的宽高比,可以使用以下两种方法之一:
1. 在布局文件中设置 ImageView 的宽高比,在 ImageView 上添加以下属性:
```
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:adjustViewBounds="true"
```
其中,`layout_width` 设置为 `match_parent`,`layout_height` 设置为 `0dp`,`layout_weight` 设置为 `1`,表示让 ImageView 铺满父容器,并且占据父容器的剩余空间。`adjustViewBounds` 设置为 `true`,表示让 ImageView 根据图片的宽高比来自动调整宽高。
2. 在代码中设置 ImageView 的宽高比,可以通过设置 ImageView 的 LayoutParams 来实现。例如:
```
ImageView imageView = findViewById(R.id.imageView);
float aspectRatio = 1.5f; // 宽高比为 3:2
int width = getResources().getDisplayMetrics().widthPixels; // 获取屏幕宽度
int height = (int) (width / aspectRatio); // 根据宽高比计算高度
imageView.setLayoutParams(new LinearLayout.LayoutParams(width, height));
```
其中,`aspectRatio` 为宽高比,`width` 为屏幕宽度,`height` 根据宽高比计算出来。最后设置 ImageView 的 LayoutParams 为计算出来的宽高值。
阅读全文