阿旭_
看需求,最万能的方法是在代码中获取屏幕的宽高,然后去计算各种比例,根据屏幕宽高在代码中重新设置某些view的宽高,缺点就是写起来比较麻烦。DisplayMetrics mDisplayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
mDisplayMetrics.widthPixels//表示手机屏幕的宽度通常要求不严格的情况下用dp,如果只要求适配部分机型可以在“layout-各种属性名”都添加相同名称的xml件文来解决另外文字如果不希望适配出问题,可以设置成dp(sp变随着手机设置字体的大小而改变),再或者设置成sp,代码在代码中添加不管系统怎么改都强制设置app内的字体都是标准手机字体也行。
/**
* activity中设置为默认的系统标准字体,不可更改
*/
@Override
public Resources getResources() {
Resources res = super.getResources();
Configuration config = new Configuration();
config.setToDefaults();
res.updateConfiguration(config, res.getDisplayMetrics());
return res;
}