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()来保证各个版本都没有问题

相关推荐
Kapaseker14 分钟前
一文吃透 Kotlin 集合操作符
android·kotlin
三少爷的鞋1 小时前
Main-safe:现代Android 架构真正的分水岭
android
沐怡旸10 小时前
深入解析 Android Performance Analyzer (APA) 底层架构与技术原理
android
李斯维17 小时前
从历史的角度看 Android 软件架构
android·架构·android jetpack
plainGeekDev20 小时前
Activity 间传值 → Navigation 参数
android·java·kotlin
用户416596736935520 小时前
Android WebView 加载 file:// 离线页面调试教程
android·前端
plainGeekDev20 小时前
onActivityResult → ActivityResult API
android·java·kotlin
随遇丿而安1 天前
第10周:Activity 基础功能与生命周期优化
android
alexhilton2 天前
Android车载OS中的Remote Compose
android·kotlin·android jetpack
落魄Android在线炒饭2 天前
Android 自定义HAL开发篇之 HIDL篇——从入门到实战(上)
android