如何在不同的屏幕上显示相同的用户界面?
我制作了一个应用程序,并对其进行了测试,使其可以在两台具有不同屏幕尺寸的不同手机上运行,并且外观差异很大。
以下是一些屏幕截图:
电话1:Huawei P20 lite(5.83英寸):
https://drive.google.com/file/d/1_wa9bcEa46Ygduo47Q8DNTu9-DIhOv5h/view?usp=drivesdk
电话2:三星Galaxy J1(4.31英寸):
https://drive.google.com/file/d/1fNDLea4Vv6LcX-vy-T1S4-XyhHN59pKD/view?usp=drivesdk
如何使它们看起来相同?
答案 0 :(得分:1)
您可以通过“选项”下方实现此目标
选项1:为每种设备分辨率制作单独的布局文件
选项2:使用“在库下面”将自动支持多个屏幕。
SDP:https://github.com/intuit/sdp SSP:https://github.com/intuit/ssp
答案 1 :(得分:0)
我认为您需要花费更多时间来专门研究android文档:
DP vs SP-字体大小。了解您应该使用哪一个 字体设置(操作系统默认设置或用户替代)如何影响 每个设置大小。通过这个SO讨论- What is the difference between "px", "dip", "dp" and "sp"?
了解android上可用的不同布局以及何时和 如何使用它们。花一些时间了解以下方面的独特属性 他们每个人。看看这个 https://developer.android.com/training/constraint-layout
您不需要任何库来实现您的目标。布局似乎非常简单。
答案 2 :(得分:0)
将以下内容添加到您的项目级Gradle文件中:
compile 'com.intuit.sdp:sdp-android:1.0.5'
用法:在代码中,无论您要指定 10dp 之类的尺寸,都将其更改为 @ dimen / _10sdp 。就像我在此示例中指定的ImageView。
<ImageView
android:id="@+id/your_image"
android:layout_marginTop="@dimen/_10sdp"
android:layout_marginBottom="@dimen/_10sdp"
android:layout_width="@dimen/_100sdp"
android:layout_height="@dimen/_100sdp"
android:src="@drawable/logo"/>
这将使您的应用程序在不同设备上的外观相同。