imooc学习笔记--屏幕适配
来源:互联网 发布:微信数据损坏无法登陆 编辑:程序博客网 时间:2024/06/06 10:55
慕课网视频地址
个人笔记,个人理解 , 如有错误欢迎指正
屏幕尺寸
屏幕对角线的长度,单位英寸(1英寸=2.45厘米)
分辨率:
横纵向上的像素点数。单位px,1px=1个像素点。
纵向像素*横向像素: 1920*1080
像素密度:
每英寸上的像素点数。单位dpi(dot per inch)
像素密度与屏幕尺寸、分辨率有关
计算方法:(纵向像素的平方 +横向像素的平方 )在开平方,这样得到的是屏幕对角线上的像素点数,然后将其结果除屏幕尺寸 ,就得到了像素密度。
以Nexus5为例子,其屏幕大小是4.95英寸,分辨率是1920*1080,那么像素密度则是
开平方(1920^2+1080^2)/4.95=455.0317……..
px:像素,是构成图形的最小单位。
dp、dip:密度无关像素,以160dpi为基准, 1dip=1px;(这里的细节还是没有理解)
视频中举的例子听懂了,但是无法准确描述出来。 网上的描述是“就是把屏幕的高分成480分,宽分成320分,比如你做一条160dip的横线,无论你在320还480的模拟器上,都是一半屏的长度。”
但我测了一下,的确是的
<View
android:layout_width="160dip"
android:layout_height="20dp"
android:background="#f00"
/>
不知道可不可以理解为: dp是根据屏幕密度来进行自动转换的一个单位。那么预想情况下是做一条160dip的横线,无论你在320还480的模拟器上,都是一半屏的长度。但实际情况是Android屏幕尺寸不尽相同,所以呈现的效果也就不同了。
sp:可以根据文字大小首选项进行缩放
google 推荐在Android开发中使用12sp以上大小,用偶数、不用奇数(如:13sp,15sp。 因为可能会损失精度 )
单单是上面这些可以理解了
android适配难做的原因是不是因为 可能同一个像素密度(dpi)可能有很多种不同的屏幕尺寸,可以这么讲么?我感觉可以吧 =.=
在看了hyman两章有关适配的博文后,我突然不知道适配这个东西到底该怎么做了,网上的解决办法千奇百怪,各有各的好处,怎么学的东西越多单子越来越小了…..
以前做一个注册登录,三下五除二搞定,现在怕这个怕那个的…..
有关适配的文章:
http://blog.csdn.net/?aspxerrorpath=/lmj623565791/article/details/49990941
csdn服务器维护,还有几章补发吧
原应 2016-06-27 10:59发送,因事耽搁,现在补发。
- imooc学习笔记--屏幕适配
- imooc学习笔记--五子棋
- JavaScript学习笔记(imooc)
- AnjularJS-imooc学习笔记1
- 屏幕适配学习笔记
- (2)PHP 学习笔记 from imooc
- 【nodejs】imooc上的学习笔记
- imooc学习
- Android多屏幕适配学习笔记
- Android多屏幕适配学习笔记
- Android多屏幕适配学习笔记
- Android多屏幕适配学习笔记
- (3)PHP 学习笔记进阶篇 from imooc
- 慕课网(imooc)Selenium自动化学习笔记01:封装
- 初识机器学习——概念介绍(imooc笔记)
- imooc Spring笔记
- R语言iMooc笔记
- 《C++ imooc》笔记
- 控制字数输入
- java.lang.IllegalArgumentException: invalid value for field
- Linux内核中ioremap映射的透彻理解
- vmware 父虚拟磁盘的容量与子磁盘的容量不同。导致无法打开虚拟机
- JS如何进行
- imooc学习笔记--屏幕适配
- 根据文字长短设置UIlabel的宽高
- linux(centos)下安装jdk
- [191] Number of 1 Bits
- 使用 PullToRefresh 的总结
- 欢迎使用CSDN-markdown编辑器
- 数据库设计三范式
- jquery中去重复排序(函数: $.grep() join() sort() )
- PullToRefresh 的继承关系