Android 适配:版本适配

文章目录

自定义ViewGroup添加View时对View对应的LayoutParams的处理操作

Android 7只需要重写ViewGroup的generateLayoutParams方法,创建需要的LayoutParmas

复制代码
    @Override
    public LayoutParams generateLayoutParams(AttributeSet attrs) {
        return new MarginLayoutParams(getContext(), attrs);
    }

Android 15 需要重写ViewGroup的generateLayoutParams方法和generateDefaultLayoutParams方法

复制代码
    @Override
    protected LayoutParams generateDefaultLayoutParams() {
        return new MarginLayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
    }

    @Override
    public LayoutParams generateLayoutParams(AttributeSet attrs) {
        return new MarginLayoutParams(getContext(), attrs);
    }

小结

如果要自定义ViewGroup,对添加到其中的View对应LayoutParams有特殊要求(如需要是MarginLayoutParams),需要重写ViewGroup.generateDefaultLayoutParams()和ViewGroup.generateLayoutParams()来保证各个版本都没有问题

相关推荐
廋到被风吹走44 分钟前
【数据库】【MySQL】分区表深度解析:架构设计与大数据归档实践
android·数据库·mysql
峥嵘life1 小时前
Android16 EDLA中GMS导入和更新
android·linux·学习
Huanzhi_Lin1 小时前
验证apk签名
android·apk签名·apksigner
独自破碎E1 小时前
【大顶堆+小顶堆】数据流中的中位数
android
得一录2 小时前
Android AIDL 在智能体和IOT设备中的使用
android·人工智能·物联网·aigc
独行soc2 小时前
2026年渗透测试面试题总结-1(题目+回答)
android·开发语言·网络·安全·web安全·渗透测试·php
IT瑞先生2 小时前
php unicode与中文互转
android·开发语言·php
aqi003 小时前
FFmpeg开发笔记(九十九)基于Kotlin的国产开源播放器DKVideoPlayer
android·ffmpeg·kotlin·音视频·直播·流媒体
Heynchy3 小时前
Android 注解的重要元素【Retention】【三】
android·java·开发语言
故事不长丨3 小时前
《Android EventBus详解与实战:从入门到精通,组件通信不再难》
android·事件·eventbus·广播·组件通信