社区
Android
帖子详情
新手请教下不同分辨率的问题
djnjc
2012-10-10 10:08:17
背景:我之前做的都是实验性质的程序,只要在我的设备上跑起来就行了,不用考虑界面。现在准备尝试一下做一个能满足大多数屏幕的程序
思路:我看到写layout的时候有一个单位是dp,貌似是根据百分比来定位的,我决定用这个
但是一想安卓的分辨率适配是个很大的难题,不可能用这一个dp来全部解决的,请各位老手说一下 用dp可能带来哪些问题?
...全文
154
6
打赏
收藏
新手请教下不同分辨率的问题
背景:我之前做的都是实验性质的程序,只要在我的设备上跑起来就行了,不用考虑界面。现在准备尝试一下做一个能满足大多数屏幕的程序 思路:我看到写layout的时候有一个单位是dp,貌似是根据百分比来定位的,我决定用这个 但是一想安卓的分辨率适配是个很大的难题,不可能用这一个dp来全部解决的,请各位老手说一下 用dp可能带来哪些问题?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mimitracely
2012-10-10
打赏
举报
回复
layout中,你用dip布局就可以了,一般情况,可以适应不同分辨率的,
djnjc
2012-10-10
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
dp和dip都行,它与px的比率是2/3。也就是1.5px = 1dip = 1dp.
正常情况下,用dp或dip就可以满足所有分辨率的适配,但也不排除一些特殊情况。所以,一般情况下做多屏幕适配的话,都是用dip,然后再将一些用Dip还无法解决适配的界面单独写出来。
详细可见此处四楼回复:http://topic.csdn.net/u/20120916/11/7265f38e-d9c7-……
[/Quote]
哦~来了个前辈。
我再问个傻一点的问题,比如我在res文件夹下面新建了个layout-1024x800文件夹,那程序跑起来后是安卓系统会根据屏幕分辨率(1024x800)找到layout-1024x800 (代码里写setContentView(R.layout.main))
还是
我在代码的头要手动获得当前屏幕分辨率,然后setContentView(R.layout-1024x800.main)?
catokat
2012-10-10
打赏
举报
回复
dp和dip都行,它与px的比率是2/3。也就是1.5px = 1dip = 1dp.
正常情况下,用dp或dip就可以满足所有分辨率的适配,但也不排除一些特殊情况。所以,一般情况下做多屏幕适配的话,都是用dip,然后再将一些用Dip还无法解决适配的界面单独写出来。
详细可见此处四楼回复:http://topic.csdn.net/u/20120916/11/7265f38e-d9c7-4264-b078-2bfbaefc3c4a.html
------------------------
简单的问题,不需要深入讨论了。
第一:程序中,绝对不要出现像素为单位,而应该以dip或者dp为单位(1dip = 1.5px)
第二:做好特殊分辨率适配:切图只需要一套,高清的就行,便如按1027*768切的图,则所有比其小的分辨率都可以用啊,就算是比其大一点,也可以用的。实际开发中,一般以480*800来切图。
第三:将不同分辨率的布局文件分开写呀:
layout
layout-1024x800
layout-1280x720
layout-1280x800
layout-320x240
layout-480x320
layout-800x480
layout-960x540
第四:不要被上面的不同分辨率布局文件吓到,其实,只要你遵循了第一条,你会发现绝大多数界面在所有分辨率上都显示正常,你只需要将极少数比较特殊的界面写上上面各分辨率的目录中就OK啦~
djnjc
2012-10-10
打赏
举报
回复
[Quote=引用 5 楼 的回复:]
java代码中不用你做任何操作。
你只需要在layout中写好xml布局文件就OK了。
举个简单的例子:
你本身有一个layout,然后你又建了layout-480x320和layout-800x480两个目录,并且,你在这三个目录中,都有同一个布局文件main.xml,那么,当你在某个Activity用使用这个main.xml布局文件时,若运行该程序的机器是480X320或者800X48……
[/Quote]
nice
catokat
2012-10-10
打赏
举报
回复
java代码中不用你做任何操作。
你只需要在layout中写好xml布局文件就OK了。
举个简单的例子:
你本身有一个layout,然后你又建了layout-480x320和layout-800x480两个目录,并且,你在这三个目录中,都有同一个布局文件main.xml,那么,当你在某个Activity用使用这个main.xml布局文件时,若运行该程序的机器是480X320或者800X480,程序就会自动调用这两个目录中的main.xml文件,若运行程序的机器不是这两种分辨率,则程序会调用默认的layout中的main.xml。
实际在写程序时,一般只会有一两个xml文件需要单独实现,正常情况下,dp或者dip就能满足要求……
[Quote=引用 2 楼 的回复:]
引用 1 楼 的回复:
dp和dip都行,它与px的比率是2/3。也就是1.5px = 1dip = 1dp.
正常情况下,用dp或dip就可以满足所有分辨率的适配,但也不排除一些特殊情况。所以,一般情况下做多屏幕适配的话,都是用dip,然后再将一些用Dip还无法解决适配的界面单独写出来。
详细可见此处四楼回复:http://topic.csdn.net/u/20120916/1……
[/Quote]
龙泉剑
2012-10-10
打赏
举报
回复
控件的长宽用dp、字体大小用sp
详见:http://blog.csdn.net/chthq/article/details/8047027
另外,要适配不同的机器的话,最好用相对布局。。。
requirejs
新手
上手课
requirejs
新手
上手课,大佬慎拍
php 降低视频
分辨率
,
新手
求助,关于视频画面剪切,指定
分辨率
,指定帧高宽剪切的
问题
!...
新手
一个,用的Adobe Premiere Pro CC 2017,想用来做一些视频剪切,合成之类的。接触PR后发现太复杂了,特来
请教
各位高手!我想剪切一个视频,把它的几个指定画面合成一个新的文件,比如源视频的
分辨率
为1920(帧宽)...
前端
新手
——适配
不同
手机端页面的方案,动态查询dpr设置根元素font-size
动态计算dpr 和根元素的fontsize,适配
不同
分辨率
不同
设备的移动前端开发
w ndows7显示不全面怎么办,Windows7系统玩英雄联盟画面显示不全怎么解决?
对于
新手
用户来说,玩游戏时所出现的
问题
,可能大多自己解决不了,需要
请教
别人。如,最近就有Windows7系统用户反映玩英雄联盟画面显示不全,那么这该怎么办呢?下面,我们就一起往下看看吧!方法步骤方法一:1、...
给IOS初学者及
新手
的建议
给ios初学者的建议 不管你是培训的还是在上学的或者是自学的!你选择了这条路就要认真的对待你所学的,别出来找工作什么都不会! 首先, ...比如,苹果手机的
分辨率
,iPhone5以上(640*1136),iPhone4/
Android
80,350
社区成员
91,289
社区内容
发帖
与我相关
我的任务
Android
移动平台 Android
复制链接
扫一扫
分享
社区描述
移动平台 Android
android
android-studio
androidx
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章