Android的屏幕适配——今日头条

在开发中我们经常会用到屏幕适配,因为市场上的手机型号实在太多了,这里我用到的适配方案是今日头条的屏幕适配,个人觉得用起来很方便,下面就来记录下使用方法:

1、在app的build.gradle里加入下面配置

//屏幕适配
implementation 'me.jessyan:autosize:1.1.2'

2、在AndroidManifest.xml里配置:(基准设计尺寸单位dp)

        <meta-data
            android:name="design_width_in_dp"
            android:value="360" />
        <meta-data
            android:name="design_height_in_dp"
            android:value="640" />

通过上面两步就可以在整个应用中完成屏幕适配了,是不是很方便。

(1)如果我们某个页面不想做屏幕适配,那么这个页面可以单独处理一下,通过implements CancelAdapt取消当前页面的屏幕适配;

(2)还有一种情况就是,如果我们某个页面想要适配另外一种尺寸,那么我们也可以单独来处理一下,通过implements CustomAdapt来实现:

public class Test extends Activity implements CustomAdapt {

    /**
     * 是否以屏幕宽度为基准
     * @return  true 为按照宽度进行适配,  false 为按照高度进行适配
     */
    @Override
    public boolean isBaseOnWidth() {
        return false;
    }

    /**
     * 这里就是我们要设置的尺寸
     * @return  UI设计的尺寸
     */
    @Override
    public float getSizeInDp() {
        return 0;
    }
}

在任何情况下本来适配正常的布局突然出现适配失效,适配异常等问题,只要重写 Activity 的 getResources() 方法即可

    @Override
    public Resources getResources() {
        //需要升级到 v1.1.2 及以上版本才能使用 AutoSizeCompat
//        AutoSizeCompat.autoConvertDensityOfGlobal((super.getResources());//如果没有自定义需求用这个方法
        AutoSizeCompat.autoConvertDensity(super.getResources(), 640, false);//如果有自定义需求就用这个方法
        return super.getResources();
    }

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时代新人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值