文档章节

android关于屏幕适配的几点建议

abcijkxyz
 abcijkxyz
发布于 2016/07/30 17:23
字数 362
阅读 0
收藏 1
1、使用wrap_content、match_parent、weight;
2、使用相对布局,尽量不使用绝对布局;
3、使用限定符,如:layout-large/xxx.xml,这样大屏设备就会自动使用该布局;
4、使用最小宽度限定符,如:layout-sw700dp/xxx.xml,这样当屏幕的宽度超过700dp时就会使用该布局;
5、针对不同的分辨率,提供具体的布局,如:res/layout-800x480/xxx.xml;
6、使用布局别名
如:layout下面有个布局mylayout.xml
在layout-large/xxx.xml里面使用mainlayout作为别名
<resources>  
    <item name="mainlayout" type="layout">@layout/mylayout</item>  
</resources>
7、使用.9图片,只需要有一张放在drawable下面即可;
8、使用dp,sp而不是px来作为长度单位;
9、提供大小不同的位图,如:mdpi,hdpi等目录下面要有相对应的位图;

10、判断加载的布局来决定走不同的流程,如下:

setContentView(R.layout.main_layout);//此处会根据屏幕大小加载不同的布局
Button btn1 = (Button)findViewById(R.id.btn1);//其中一个布局没有该按钮
if(btn1 == null){
    ...
}else{
    ...
}

小提示:
1、dp与Px的换算规则:以160dpi(密度)为基准,1dp=1px,若密度是320dpi,则1dp=2px,以此类推。
2、mdpi,hdpi等目录并不需要全部都放上图片,这样会使apk占用的存储空间变大,建议对那些比较重要的图片提供多个分辨率,不很重要的只提供一张即可。

本文转载自:http://blog.csdn.net/wdong_love_cl/article/details/51638537

共有 人打赏支持
abcijkxyz
粉丝 60
博文 6196
码字总数 1876
作品 0
深圳
项目经理
android兼容小米xiaomi刘海屏解决方案

引用自小米官方文档,这里缩减了一些内容,捡取重要内容。 转载请标明出处: https://blog.csdn.net/DJY1992/article/details/80688376 本文出自:【奥特曼超人的博客】 推荐: android 兼容所...

奥特曼超人
06/14
0
0
android兼容oppo手机刘海屏解决方案

引用自OPPO官方文档,这里缩减了一些内容,选取重要内容,包括oppo沉浸式的兼容。 转载请标明出处: https://blog.csdn.net/DJY1992/article/details/80688802 本文出自:【奥特曼超人的博客】...

奥特曼超人
06/14
0
0
Android P 凹口屏支持,打造全面屏体验

作者: Megan Potoski, Android 系统用户界面产品经理 智能手机发展至今,边框越做越窄,屏幕中横比越做越大。而凹口屏 (又称 "刘海屏") 更是成为各大设备厂商手中的 "神兵利器":既能让用户享...

Android_开发者
08/06
0
0
0-2岁的app开发人员必读,Android开发APP前的准备事项

随着移动互联网的兴起,各行各业对移动应用的需求越来越大,从事APP开发的人也越来越多,APP开发行业可以说是方兴未艾。APP开发是比较复杂的事情,涉及产品、美工设计、服务器端开发、Andro...

传授知识的天使
06/06
0
0
一款APP,从设计稿到切图(Android篇)

原文出处:BATLCK 依旧声明:这里写的依旧只是某一种工作方法,而不是一种规范,你可以参考,但不要照搬,在具体工作中,一定要灵活运用。 汇总贴,整理了之前零散的关于Android的文章……这...

BAT_LCK
2015/12/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Confluence 6 反向跟踪

当反向跟踪(Trackback )被启用后,在任何你链接到可用启用自动发现功能的外部页面中,Confluence 将会自动发送一个方向跟踪 ping,这个 ping 能通知链接的页面有了内容改变。 Confluence 页...

honeymose
10分钟前
0
0
日期和时间API - 读《Java 8实战》

日期与时间 LocalDate 创建一个LocalDate对象并读取其值 // 根据年月日创建日期LocalDate date1 = LocalDate.of(2014, 3, 18);// 读取System.out.println(date1.getYear()); // 2014Sys...

yysue
18分钟前
0
0
8月15日任务

8月15日任务 Memcached命令行 • telnet 127.0.0.1 11211 • set key2 0 30 2 ab STORED get key2 VALUE key2 0 2 ab END 实例: [root@localhost 02]# telnet 127.0.0.1 11211-bash: te......

寰宇01
30分钟前
1
0
LNMP架构(Nginx访问日志、Nginx日志切割、静态文件不记录日志和过期时间)

Nginx访问日志 1.打开配置文件,搜索log_format vim /usr/local/nginx/conf/nginx.conf 2.访问日志常用变量含义 $remote_addr : 客户端IP(公网IP) $http_x_forwarded_for : 代理服务器的IP ...

蛋黄_Yolks
30分钟前
0
0
lombok 不用再写pojo的getset

java实体类不写get/set方法 1、下载地址https://projectlombok.org/download Myeclipse、eclipse安装lombok Lombok是一种Java实用工具,可以帮助开发人员消除Java的冗长,具体看lombok的官网...

木之下
37分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部