Re: [闲聊] 排版的方式

楼主: tga123 (叛帝)   2014-06-26 11:30:35
之前讲解的方式似乎没有附图表达不太清楚
今天拉了一张图来讲解

目的:接口会跟UI设计的近似相同,即便在不同分辨率不同尺寸下也是相同的背景
UI在排版的时候只要有变动可以很准确的更换
(方法一)
每个元件都佣有一个对应的Imageview来做元件图
Imageview的图的设置为:http://pastebin.com/EW56VLGm
也就是说在不同萤幕大小看到的元件大小都会等比例缩放
再来就是元件的部分则是用透明的背景
然后在人工去定义元件大小之后再使用
marginLeft 或 marginTop来进行对齐...
之后再使用Style搭配不同分辨率hdpi..xhdpi去做等比例调整就可以了..
昨天实做的时候发现..就算相同分辨率...但是会因为萤幕尺寸受到影响(?)
导致元件对不齐...
(我原本在4.65 Galaxy nexus排版好在预览layout切换至4.7 WXGA 就会发现这个问题)
(刚刚看一下又似乎跟下方的三个控件有关???)
(方法二)
http://pastebin.com/5KrQ4KuL
我改用权重的方式去设定...也就是利用LinearLayout去排版...
而且每个元件都用独一的RelativeLayout层
好处:就是不用去设Style在不同分辨率下透明元件的大小都会等比例相同
在不同的分辨率还是不同的尺寸都不用再做更动...
坏处:layout_weight是使用人工微调..不知道怎么去算...
现在在测试(方法三)
UI使用我萤幕的分辨率拉好接口之后给我每个元件的四角座标..
然后我利用这个座标再程式内算好
假如这个元件的座标刚好等于我分辨率高的四分之一
那也就是说在每个装置上刚好都是四分支一的位置....
尺寸也是相同的做法...
http://pastebin.com/mmS12zfa
个人觉得第二种做法就已经很好了
但是UI觉得这种方式维护不就每次都要人工重新排版,不够逻辑化
改接口改了两个礼拜了...
android的接口设计起来真的超麻烦..
作者: tac0wu (在BBS中流浪)   2014-07-05 16:42:00
android 的UI 你要把它当网页来写 设计出发点错了 单然麻烦

Links booklink

Contact Us: admin [ a t ] ucptt.com