请以简单的方式详细说明sw<N>dp
和之间的区别w<N>dp
。我研究了屏幕尺寸的完整文档,但是在这两个限定符sw <>和w <>之间感到困惑。
请以简单的方式详细说明sw<N>dp
和之间的区别w<N>dp
。我研究了屏幕尺寸的完整文档,但是在这两个限定符sw <>和w <>之间感到困惑。
Answers:
Android设备屏幕是矩形。矩形有两个侧面,一个比另一个短。我们称其为短A和长B。
-swNNNdp
指示“如果长度大于或等于NNN dp
,则使用这些资源”
-wNNNdp
表示“如果当前持有的设备宽度大于或等于NNN,则使用这些资源dp
”
当用户在纵向和横向之间旋转设备时,宽度将更改(为A或B),但是A(最短的宽度)始终相同。
请看一下屏幕支持
根据文档:
西南:屏幕的基本尺寸,由可用屏幕区域的最短尺寸表示。具体来说,设备的MinimumWidth是屏幕可用高度和宽度中的最短宽度(您也可以将其视为屏幕的“最小可能宽度”)。您可以使用此限定符来确保,无论屏幕当前的方向如何,您的应用程序的UI至少具有dps宽度可用。
while W:以dp单位指定应使用资源的最小可用宽度(由值定义)。当屏幕的方向在横向和纵向之间切换以反映用户界面可用的当前实际宽度时,系统相应的宽度值就会更改。
用我的话说:
SW:dps屏幕边缘之间的最小距离将在您的布局上运行,因此,如果您使用layout-sw600dp /文件夹,则其中的所有布局仅适用于至少600dp(宽度或高度)的设备
W:表示您的布局将可以在宽度为n dp的任何设备上使用,而无论高度如何,或者当前处于横向模式的设备都可以使用(在这种情况下,w指的是高度..因为横向和纵向之间的方向不同)