缩放ImageView在手机和平​​板电脑上看起来一样

时间:2018-02-10 09:55:36

标签: android

这就是我手机和平板电脑上的外观图像:

https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51949626

phone

我想缩放图像,以便在平板电脑上打开应用程序时,距离d1,d2,d3,d4将与移动设备上的距离相同。我不希望图片保持相同的大小,我只是希望它可以扩展,以便我的设计在每个设备上看起来都一样。我尝试使用dp,px来定义距离d1,d2,d3,d4,但它不起作用。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

提供新大小单元的android SDK - sdp(可扩展dp)。此尺寸单位随屏幕尺寸而变化。它可以帮助Android开发人员支持多个屏幕。

通过这个图书馆:

dependencies {
  implementation 'com.intuit.sdp:sdp-android:1.0.5'
  implementation 'com.intuit.ssp:ssp-android:1.0.5'
}

如果您想使用heightwidthmarginpadding等,请使用 @dimen/_20sdp 。 (根据您的要求选择尺寸)。

如果您想使用TextSize,请使用 @diment/_12ssp 。 (根据您的要求选择尺寸)。

请看下面的示例代码:

<ImageView
            android:id="@+id/img_companies"
            android:layout_width="@dimen/_20sdp"
            android:layout_height="@dimen/_20sdp"
            android:src="@drawable/ic_companies"
            android:layout_gravity="center_vertical"
            android:layout_weight="1"/>

这样你可以使用高度和宽度两侧的固定尺寸

更新

  • sdp 用于平板电脑和移动设备中的相同用户界面。
  • ssp 用于平板电脑和移动设备的相同TextSize。

你也可以看到这个链接的另一个例子: https://github.com/intuit/sdp

希望它对你有用

答案 1 :(得分:0)

我想可能你可以设置图像视图的宽度和高度以匹配父级,然后你可以根据d1,d2,d3和d4添加边距(左,右,上和下) 然后设置图像视图的比例类型以适应xy .....我不是很确定最后一步但我认为我会工作