Android适配分为三种:硬件属性、系统版本、屏幕尺寸
1、硬件属性
PackageManager pm = getPackageManager();
if (!pm.hasSystemFeature(PackageManager.FEATURE_SENSOR_COMPASS)) {
// This device does not have a compass, turn off the compass feature
disableCompassFeature();
}
2、系统版本
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
// Running on something older than API level 11, so disable
// the drag/drop features that use ClipboardManager APIs
disableDragAndDrop();
}
Screen configuration
3、屏幕尺寸
1)dp和sp
dpi :dots per inch , 直接来说就是一英寸多少个点。常见取值 120,160,240,一般称作像素密度。dpi越高显示效果越精细。
dp:(Density-independent Pixels)密度无关像素
160dpi:1dp=1px
320dpi:1dp=2pxsp:(Scale-independent Pixels )可伸缩像素
原理与dp相同,但是主要用于文字
2)限定符
最小宽度限定符
Smallest-width Qualifier
最小宽度限定符允许我们对屏幕的宽度指定一个最小指(以 dp 为单位),然后以这个最
小值为临界点,屏幕宽度大于这个值的设备就加载一个布局,屏幕宽度小于这个值的设备就
加载另一个布局。
在 res 目录下建立 layout-sw600dp 文件夹,并在在文件夹内建立要加载的布局。表示宽度超过600dp时加载此文件夹内的布局