我正在使用ImageView容器显示图片。当用户输入特定值并点击更新时,需要调整图像大小以适应显示。
调整大小仅用于显示,原始资源保持不变,不进行编辑、保存等操作。
XML布局
<ImageView
android:background="@drawable/picture01"
android:id="@+id/picture01holder"
android:layout_below="@+id/TextView01"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
</ImageView>
main.java
final ImageView pic01 = (ImageView)findViewById(R.id.picture01);
现在我该怎么做才能动态地为这个pic01分配我想要的大小。只需要函数,我可以自己在按钮内实现它。我相信我必须使用像pic01.setLayoutParams这样的东西,但我不知道如何使用它。
基本上我想在.java文件中覆盖layout_height="wrap_content"和layout_width="wrap_content"。
new LayoutParams
。这样做的缺点是,许多ViewGroup
实现它们自己的LayoutParams
子类,并且需要知道特定的ViewGroup
类才能知道要实例化哪个LayoutParams
。一个简单的方法是只需使用getLayoutParams()
检索现有的LayoutParams
实例,修改其宽度和高度,然后使用setLayoutParams
分配回去。这将避免潜在的ClassCastException
。 - Avi Cherry