Android屏幕尺寸适配
常见屏幕宽度值
- 320dp:常见手机屏幕(240320 ldpi、320480 mdpi、480*800 hdpi等)
- 480dp:中间平板电脑、大屏手机 (480x800 mdpi)
- 600dp:7英寸平板电脑 (600x1024 mdpi)
- 720dp:10英寸平板电脑(720x1280 mdpi、800x1280 mdpi 等)
适配最小宽度:sw<N>dp
res/layout/main_activity.xml #For handsets
res/layout-sw600dp/main_activity.xml # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml # For 10” tablets (720dp wide and bigger)
sw<N>dp用于指定屏幕两边的最小宽度,不管设备当前的方向如何,只有最小宽度超过600dp才适用7” tablets布局,最小宽度超过720dp才适用10" tablets布局。
这种情况下,一部设备只会使用一种布局。
适配可用宽度:w<N>dp
res/layout/main_activity.xml # For handsets (smaller than 600dp available width)
res/layout-w600dp/main_activity.xml # Multi-pane (any screen with 600dp available width or more)
w<N>dp用于指定可用宽度,只要屏幕宽度超过600dp,就适配Multi-pane布局。
这种情况下,如果一部设备的可用宽度在一个方向上大于等于600dp,而在另一个方向上小于600dp,就会使用两种布局。
在清单文件中声明屏幕支持
指定最小支持宽度:应用只用于最小可用宽度为00dp的平板设备
<supports-screens android:requiresSmallestWidthDp="600" />
如果应用支持所有屏幕尺寸,则无需声明此属性。
Android 系统不关注此属性,因为它不影响应用在运行时的行为,而是被用于在服务(例如Google Play)上过滤应用。