我有一个带图像的按钮。图像的高度应为设备高度的20%。所以我以编程方式设置图像的高度。 问题是,如果我这样做,图像会变得拉长。我把它必须缩放的设置放在centerinside中,我也试过了其他元素,如imagebutton或imageview,但我总是遇到同样的问题。 我能怎么做?
更新这是我的xml代码:
<LinearLayout
android:id="@+id/letterLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:layout_marginBottom="10dp"
android:scaleType="centerCrop"
android:gravity="center"
android:layout_gravity="center"
android:onClick="onClick">
<Button
android:id="@+id/letterButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:fontFamily="sans-serif"
android:textStyle="bold"
android:padding="30dp"
android:textColor="#000000"
android:background="#00000000"
android:clickable="false"/>
</LinearLayout>
我设置高度的Java代码:
letterLayout.getLayoutParams().height = (int) (hQdr);
letterTest.getLayoutParams().height = (int) (hQdr);
//letterTest.getLayoutParams().width = (int) (wQdr);
你试过参数android:scaleType="centerCrop"
了吗?这会裁剪您的图像以进入布局