我的 xml 中有一个 ImageView,如下所示:
<ImageView
android:id="@+id/ivMessage"
android:layout_width="@dimen/two_hundred_dp"
android:layout_height="@dimen/one_sixty_dp"
android:layout_alignParentRight="true"
android:layout_margin="@dimen/ten_dp"
android:background="@drawable/rounded_rectangle_white"
android:scaleType="fitXY"
android:padding="@dimen/ten_dp"
tools:src="@drawable/logo" />
但是我从服务器获取的照片可以是纵向和横向模式,我只想在发生这样的事情时交换这个高度和宽度。我试图以编程方式转换这些 dp 但这不起作用并且 dp 发生了变化。有什么简单的方法我想念吗?
由于您说来自服务器的图像可以是纵向或横向,因此您可以通过以下方式以编程方式滑动尺寸。
步骤 1. 确定图像是横向还是纵向
boolean landscape = false;
if(image.getHeight()>image.getWidth()){
//image is in portrait
landscape = false;
}else{
//image is in landscape
landscape = true;
}
步骤 2. 相应地更改高度和宽度
if(landscape){
imageView.setWidth(200);
imageView.setHeight(160);
}
else{
imageView.setWidth(160);
imageView.setHeight(200);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句