我有多种布局来支持不同的屏幕尺寸:
layout-sw320dp (smallest phones, 4.0" and smaller)
layout-sw360dp (approximately 4.7-5")
layout-sw400dp (most phones right now, 5-6")
注意:此值来自Android Studio Design
中的Layout Editor
标签。
(layout-sw320dp
的示例)
在layout-sw320dp
的{{1}}中设计了小屏幕尺寸的第一种布局(Android Emulator
)
第二种布局(Nexus S
)是在真实设备layout-sw360dp
上设计的
它们两者都有效!每种布局都会根据电话屏幕尺寸进行调用:Samsung Galaxy A3 2017 - 4.7''
上的layout-sw320dp
是Nexus S
,电话上的4.0'
是电话layout-sw360dp
。
我的问题出在4.7"
及更大layout-sw400dp
的设备上。对于此布局,我有另一个真实的电话5"
,但是在此电话上,该应用正在呼叫Samsung Galaxy S7 edge - 5.5"
而不是layout-sw360dp
。这仅发生在我的真实手机上。在layout-sw400dp
上的Android Emulator
(具有与Pixel XL
-S7 edge
完全相同的屏幕规格和相同的分辨率)中,应用调用正确的布局。
我的问题是:为什么会这样?我该如何解决layout-sw400dp
且电话比5"
大的电话拨打其他电话吗?
答案 0 :(得分:1)
三星S7 Edge是5.5英寸手机,属于sw360dp
类别
这意味着一切都在按原样进行
链接https://material.io/tools/devices/
重点是, DP不仅取决于屏幕一侧,还取决于屏幕尺寸和显示器实际具有多少像素。