Android决议具体解释
1、Android手机常见的分辨率
WVGA:800x480
FWVGA:854x480
QHD:960x540
720P:1280x720(SD。standard definition,SD)
1080P:1920x1080(高清。high definition,HD)
2、分辨率相应dpi
dpi(dots per inch,每英寸点数)
hdpi相应WVGA、FWVGA、QHD。
xhdpi相应720P。
xxhdpi相应1080P。
3、AndroidManifest.xml设置
android:anyDensity="true"时,应用程序安装在不同密度的终端上时。程序会分别载入xxhdpi、xhdpi、hdpi、mdpi、ldpi目录中的资源。
android:anyDensity="false"时,即使在目录下拥有同样资源,应用不会自己主动地去对应目录下寻找资源。
4、横屏竖屏文件夹区分
1)drawable
drawable-land-hdpi,当屏幕为横屏,且为高密度时,载入此目录的资源。
drawable-port-hdpi。当屏幕为竖屏,且为高密度时,载入此目录中的资源。
(2)layout
在res文件夹下建立layout-port和layout-land两个文件夹,里面分别放置竖屏和横屏两种布局文件,以适应对横屏竖屏自己主动切换。
5、多屏适配原则
(1)在layout文件里设置控件尺寸时应採用fill_parent、match_parent、wrap_content和dp。详细来说,设置view的属性android:layout_width和android:layout_height的值时,fill_parent、match_parent、wrap_content和dp比px更好,文字大小应该使用sp来定义。
(2)在程序的代码中不要出现详细的像素值,在dimens.xml中定义。
为了适应多种屏幕,android建议开发人员不要使用详细的像素来表示控件尺寸。
6、9-patch图片
在android中。不仅能够使用.png、.jpg、.gif的普通图片作为图片资源,并且能够将扩展名为.9.png的9-patch图片作为图片资源。
android的SDK文件夹tools下的draw9patch工具能够生成一个能够伸缩的标准png图像。该图像的扩展名为.9.png。9-patch图片通经常使用作背景,与普通图片不同的是,使用9-patch图片作为屏幕或者button背景时。当屏幕尺寸或button大小改变时,图片可自己主动缩放。达到不失真效果。
9-patch PNG图片。在原生PNG图片四周空出一个像素间隔,用来标识PNG图片中哪些部分能够拉伸、哪些不能够拉伸、背景上的边框位置等。
7、不同layout
如何才干让Application自己主动适应不同的屏幕呢?
事实上非常easy,仅仅须要在res文件夹下创建不同的layout文件夹,比方layout-640x360、layout-800x480等。全部的layout文件在编译之后都会写入R.java里。而系统会依据屏幕的大小自己选择合适的layout进行使用。
8、dip、dp、px、sp介绍
dip:device independent pixels,设备独立像素。
dp:非常easy。和dip是一样的。
px:pixel。像素。
sp:scaled pixels。主要用于字体显示。
9、屏幕分辨率、大小、密度
(1)屏幕分辨率:屏幕分辨率就是手机屏幕的像素点数,指屏幕横竖各有多少个像素。一般描写叙述成屏幕的“宽×高”。
安卓手机屏幕常见的分辨率有480×800、720×1280、1080×1920等,比如720×1280表示此屏幕在宽度方向有720个像素,在高度方向有1280个像素。
(2)屏幕大小:屏幕大小是手机对角线的物理尺寸,以英寸(inch)为单位。比方某某手机为“5寸大屏手机”。就是指对角线的尺寸为5英寸。5寸×2.54厘米/寸=12.7厘米。
(3)屏幕密度:屏幕密度就是每英寸的像素点数。数值越高当然显示越细腻。对于屏幕来说,dpi越大,屏幕的精细度越高,屏幕看起来就越清楚。
手机能够我们具有相同的分辨率。但在屏幕的大小不能在同一。
版权声明:本文博主原创文章,博客,未经同意不得转载。
Android决议具体解释的更多相关文章
- Android slidingmenu详细解释 滑动的优化
Android slidingmenu 详细解释 性能优化 转载请注明: http://blog.csdn.net/aaawqqq 简单介绍 SlidingMenu 是github 上Androi ...
- android动画具体解释一 概述
动画和图形概述 Android 提供了大量的强大的API以应用于UI动画和绘制2D和3D图形.以下各节向你描写叙述了这些API的预览和系统能力以帮助你决定怎么才是达到你需求的最佳方法. 动画 Andr ...
- android动画具体解释二 属性动画原理
property动画是一个强大的框架,它差点儿能使你动画不论什么东西. 你能够定义一个动画来改变对象的不论什么属性,不论其是否被绘制于屏幕之上. 一个属性动画在一定时间内多次改变一个属性(对象的一个字 ...
- Android Scroll具体解释(二):OverScroller实战
作者: ztelur 联系方式:segmentfault,csdn.github 本文仅供个人学习,不用于不论什么形式商业目的,转载请注明原作者.文章来源.链接,版权归原文作者全部. 本文是andr ...
- android动画具体解释六 XML中定义动画
动画View 属性动画系统同意动画View对象并提供非常多比view动画系统更高级的功能.view动画系统通过改变绘制方式来变换View对象,view动画是被view的容器所处理的,由于View本身没 ...
- android动画具体解释四 创建动画
使用ValueAnimator进行动画 通过指定一些int, float或color等类型的值的集合.ValueAnimator 使你能够对这些类型的值进行动画.你需通过调用ValueAnimator ...
- 使用Ant打包Android应用具体解释——Ant使用解析
上篇<使用Ant打包Android应用具体解释>描写叙述了使用Ant打包的流程,但非常多步骤并没有说明如此做的原因,本篇将从Ant方面来理解,下一篇从APK生成的流程来说明. APK包的生 ...
- Android.mk具体解释
概述 Android.mk文件用来向编译系统描写叙述怎样编译你的源码.更确切地说,该文件事实上就是一个小型的Makefile.由于该文件会被NDK的编译工具解析多次,因此应该尽量降低源码中声明 ...
- Android.mk参数解释
-------------------- 下面对Android.mk 中经常出现的变量进行讲解 -------------------- 这些变量,你会经常在Android.mk文件中见到,下面以字表 ...
随机推荐
- cocos2dx手写js绑定C++
这两天连续查阅了js绑定c++的非常多文章 , 有手动与自己主动两种方式 . 本来想用自己主动绑定的 , 可是NDK一直下载不下来.....就给算了 . 以下总结一下手动绑定的实现过程 : 一共三步 ...
- My Solution: Word Ladder
public class Solution { public int ladderLength(String start, String end, Set<String> dict) { ...
- Automatically generate serial number in abap
流水号的产生: 在ABAP开发中,很多地方都需要按照自己的规则生成流水号,把这些流水号保存进透明表,作为唯一标示. 一. 系统中设定流水号 使用T-Code SNRO来创建一个流水号标识对象. 输 ...
- Android 权限添加
在AndroidMainFest.xml中加上以下代码就行了 添加WiFi以及访问网络的权限: <uses-permission android:name="android.permi ...
- Codeforces Round #198 (Div. 2) C. Tourist Problem (数学+dp)
C. Tourist Problem time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- java 对map排序
public static Map<String, String> sortMapByKey(Map<String, String> map) { if (map == nul ...
- SQL在declare声明变量
在sql添加的声明变量. declare @local_variable data_type 你需要指定一个变量声明的类型, 能够使用set和select对变量进行赋值, 在sql语句中就能够使用@l ...
- Effective C++:规定20: 宁pass-by-reference-to-const更换pass-by-value
(一) 假设传递参数当函数被调用pass-by-value,然后函数的参数是基于实际参数的副本最初值,调用,也得到该函数返回的结束值复印件. 请看下面的代码: class Person { publi ...
- Mvc后台接收 参数
@Html.TextAreaFor(m => m.Emps, new { @class = "easyui-validatebox", @style = "heig ...
- extjs的相关属性
通用属性: labelSeparator:''//表示fieldLabel后不会显示冒号":" readOnly:true//仅仅读 focusCls: 'txtHalfInput ...