现在大家写 android 在屏幕适配方面 是多写几套布局还是用 ConstrainLayout 还使用百分比布局?
1
yuriko 2018-06-27 11:20:20 +08:00 1
ConstrainLayout 不是必须的
写 UI 的时候自己心里得清楚哪里有多宽,不一定是百分比 一般只有搞不定的时候采用多组资源的方式解决问题,比如 pad 版和 phone 之间差别大的时候 |
2
CrisTao 2018-06-27 11:25:07 +08:00 2
老老实实用 dp 不就行了吗,还有什么需要适配的?
|
3
MudBodhisattva OP @CrisTao dp 布局一层套一层,然后有些屏幕大小密度不一样的,比如说很小的,ui 就会放不下,感觉百分比省力些,但是百分比子 view 用会出问题,约束的话新出来的也在用然后有些地方还是不满足
|
4
MudBodhisattva OP @yuriko 主要 android 碎片化实在恶心,尤其是屏幕小的,用 dp 看着差不多,在小屏幕设备上就超了。
|
5
KNOX 2018-06-27 12:16:36 +08:00 via Android 1
@MudBodhisattva 你说的小屏幕有多小,现在连 5 寸的机子都很少了。
|
6
0x8192dd 2018-06-27 12:30:01 +08:00
适配也是具体页面具体策略来的,没有什么银弹,大部分页面 match_parent + wrap_content + dp 值就够用了,小屏拥挤一点,大屏内容多点,很正常,别人买大屏手机是为了看更多内容而不是看放大内容,同样的,买小屏手机也是为了操作更方便而不是看缩小的内容。
个别复杂页面,可能会用到百分比布局,比如转盘,老虎机这种需要根据屏幕尺寸等比缩放,但对于普通 App 来说,占比太少。 我一般以 5 寸左右的手机( Pixel,Nexus 5X )作为转换标准,在这个尺寸下,美术给 iOS 的设计稿( 4.7 寸 2x )的值除以 2 差不多就是 dp 值,切图也可以直接使用 iOS 的 2x 图 |
7
MudBodhisattva OP @KNOX 最近在给一个搞物流的做 app,他们的设备是扫码枪,但是也能用手机,那个扫码枪的屏幕,o(︶︿︶)o 唉。这只是一种情况。
|
8
windsage 2018-06-27 12:43:10 +08:00 via iPhone
dp 适配,多几套尺寸,sw 适配
|
9
yukiww233 2018-06-27 12:57:31 +08:00
@MudBodhisattva #7
哈哈适配扫码枪有点惨 在上家做过 100 寸横屏大屏的适配.. |
10
yuriko 2018-06-28 11:43:37 +08:00 1
@MudBodhisattva 原则上 dp 的大小是按照屏幕 PPI 去配置的,相当于是一个分辨率 /屏幕大小的值,理论上不同手机对应的 dp 物理尺寸应该差的不大。
不过和 pt 单位的不同,dp 和像素的比值 density 一般也就一个整.5 的值,所以也就大概。 不过还有个坑就是…… density 值是由 OEM 去设的,一些小厂商可能会随便乱写……(我当年试过改这破东西) 所以我觉得你的问题要么是 OEM 设备不正规,要么就是缺 UI 设计 |
11
MudBodhisattva OP @yuriko 设备是一个问题,主要还是缺 ui 设计啊,为了实现一个布局用本来的相对线性一层层嵌套太麻烦,新出来的约束用不习惯
|
12
yuriko 2018-06-28 13:50:43 +08:00
UI 实现一直都是个繁琐的事情,约束布局不见得就简单了
我现在连 RelatedLayout 都不怎么用了,觉得也习惯了 (而且,UI 不是只会把界面搞的更复杂么…… |
13
kinsomy 2018-07-04 09:54:03 +08:00
CL 对于复杂布局写的太复杂看起来太费劲了
|