android127 zhihuibeijing 屏幕适配
## 屏幕适配 ##
加载不同分辨率的图片是根据手机的像素来加载不同分辨率文件夹下的图片。 > 先在主流屏幕来发: *(分辨率和手机屏幕大小无关), 遵循原则: 不用AbsoluteLayout(绝对布局), 多用相对布局&线性布局(权重), 要用dp,不用px
>
> 开发后期, 在不同分辨率屏幕上测试(*,*), 如果没出现太大问题(影响正常使用), 就可以上线
>
> 如果后期测出问题怎么办? - 图片适配 不是很常用,针对不同分辨率的手机做不同的图片。 - 布局适配 不是很常用, layout-800x480 专门适配480*800屏幕的布局文件。 - 尺寸适配 dp和px的关系: dp = px/设备密度(像素px是真实的屏幕单位) float density = getResources().getDisplayMetrics().density;
System.out.println("设备密度:" + density); *(0.75), *(),*(1.5),*() values文件夹下建立一个dimens.xml文件, values-1280x720文件夹下建立一个dimens.xml文件,这2个dimens.xml分别写<dimen name="textview_width">320dp</dimen>用来在不同的屏幕去加载不同的尺寸。 - 权重适配
权重只有线性布局有。
android:weightSum="",父布局整体有3个权重,子布局总共不足3个则留空。 - 代码适配 获取屏幕宽高,动态计算控件大小
int width = getWindowManager().getDefaultDisplay().getWidth();//屏幕的宽度
int height = getWindowManager().getDefaultDisplay().getHeight();//屏幕的高度 TextView tv1 = (TextView) findViewById(R.id.tv_1);
TextView tv2 = (TextView) findViewById(R.id.tv_2); LayoutParams params = new LayoutParams(width / , (int) (height * 0.2));
tv1.setLayoutParams(params);//动态设置控件的大小
tv2.setLayoutParams(params);
android127 zhihuibeijing 屏幕适配的更多相关文章
- Android屏幕适配笔记
1.限定符 为了适配不同屏幕大小的android手机或android平板,有时候就需要利用限定符来为不同的屏幕设定不同的布局文件,在一般情况下我们都是在layout文件夹下为某个活动准备一个默认的布局 ...
- iOS开发点滴:iPhone屏幕适配
最近开始做iOS开发,遇到一些小问题和解决方法,记录下. 今天是iPhone屏幕适配 iPhone5出来之后屏幕就有iPhone就有了2种尺寸:3.5寸和4寸,xcode 5 的IB设计器里面界面 ...
- IOS开发之绝对布局和相对布局(屏幕适配)
之前如果做过Web前端页面的小伙伴们,看到绝对定位和相对定位并不陌生,并且使用起来也挺方便.在IOS的UI设计中也有绝对定位和相对定位,和我们的web前端的绝对定位和相对定位有所不同但又有相似之处.下 ...
- JavaScript强化教程 —— Cocos2d-JS的屏幕适配方案
1. 设置屏幕适配策略(Resolution Policy) 如果你还没有用过Resolution Policy,只需要在游戏载入过程完成之后(cc.game.onStart函数回调中),调用下面的代 ...
- 【iOS】屏幕适配之NSLayoutConstraint
前言 如何实现一张图片在iPhone和iPad上显示不同的尺寸,我了解到一般有三种办法:直接手写代码动态添加约束:把NSLayoutConstraint关联到ViewController里再viewD ...
- Android 屏幕适配
前言 手机的屏幕适配一直是非常麻烦的,现在我就以做笔记的方式来简单梳理下 单位理解 首先让我们先来看看关于手机所用到的单位 真实物理尺寸单位: mm:表示毫米,是屏幕的物理尺寸. in:表示英寸,是屏 ...
- 了解真实的『REM』手机屏幕适配
rem 作为一个低调的长度单位,由于手机端网页的兴起,在屏幕适配中得到重用.使用 rem 前端开发者可以很方便的在各种屏幕尺寸下,通过等比缩放的方式达到设计图要求的效果. rem 的官方定义『The ...
- Android屏幕适配全攻略 (转载)
http://blog.csdn.net/jdsjlzx/article/details/45891551 https://github.com/hongyangAndroid/AndroidAuto ...
- iOS屏幕适配
## iOS屏幕适配 ### iOS屏幕适配发展史 1> iPhone4以前(没有iPad) * 不需要屏幕适配 2> iPad.iPhone5等设备出现 * 需要做横竖屏适配 * aut ...
随机推荐
- UVa 1643 Angle and Squares
题意: 如图,有n个正方形和一个角(均在第一象限中),使这些正方形与这个角构成封闭的阴影区域,求阴影区域面积的最大值. 分析: 直观上来看,当这n个正方形的对角线在一条直线上时,封闭区域的面积最大.( ...
- APIO2012派遣
2809: [Apio2012]dispatching Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1196 Solved: 586[Submit ...
- 对redis客户端jedis2.8.0的进一步封装
jedis2.8.0的进一步封装: 1.序列化存储对象 2.结合spring,创建redis连接池 3.提供了基础的单个实体操作,有序list操作和一对多关系list的操作,对list提供了分页的封装 ...
- HDU 1532 Drainage Ditches 排水渠(最大流,入门)
题意: 给出一个有向图,以及边上的容量上限,求最大流.(有重边,要将容量上限叠加) 思路: 用最简单的EK+BFS解决.每次搜到一条到达终点的路径,就立刻退出,更新ans,然后再回头修改图中的当前fl ...
- eclipse中相同代码的高亮显示
在eclipse中 当选中一串字符时,让其他相同字符代码都高亮显示,操作如下: windows-> preferences-> java-> Editor-> Mark Occ ...
- 数学(扩展欧几里得算法):HDU 5114 Collision
Matt is playing a naive computer game with his deeply loved pure girl. The playground is a rectangle ...
- put a ContextMenu into the header of a TabPage z
publicclassMyTabControl:TabControl { protected override void OnMouseUp(MouseEventArgs e){ if(e.Butto ...
- 第一章 Lambda表达式
1.1 Why Lambdas? 当你操作多线程的时候,你会像下面这样将要处理的代码放到run()函数中: class Worker implements Runnable { public void ...
- Linux批量修改指定目录下的文件或文件夹权限
在Puppet下很头大,尤其是文件拷贝,使用file的mode会导致文件或文件夹都一个权限. 暂时使用命令代替: 最近忙着明年的N多计划,待有空后继续研究.
- HTML中noscript的用法
noscript 元素用来定义在脚本未被执行时的替代内容(文本).此标签可被用于可识别 <script> 元素用来定义在脚本未被执行时的替代内容(文本). 标签但无法支持其中的脚本的浏览器 ...