AndroidStudio2020.3.1P2中,LiveData没有非空检查提示。
创始人
2024-10-10 22:00:38
0

为了解决这个问题,我们需要为LiveData属性添加Kotlin属性委托,并使用NotNull委托来确保它不为空。代码示例如下:

class MyViewModel: ViewModel() {
    private val _myLiveData = MutableLiveData()
    val myLiveData: LiveData
        get() = _myLiveData.notNull()
}

fun  LiveData.notNull(): LiveData {
    return MediatorLiveData().also { mediator ->
        mediator.addSource(this) { value ->
            if (value != null) {
                mediator.removeSource(this)
                mediator.value = value
            }
        }
    }
}

这样做,我们将会得到一个编译时警告,如果我们尝试访问空的LiveData属性,我们可以确保它不为空。

相关内容

热门资讯

第2分钟项目!人人燕赵挂,潮汕... 第2分钟项目!人人燕赵挂,潮汕掌手娱辅助器,软件教程(有挂方式)-哔哩哔哩1)潮汕掌手娱辅助器辅助挂...
第9分钟攻略!新道游开挂辅助透... 第9分钟攻略!新道游开挂辅助透视,阿拉游戏中心辅助,透明挂教程(揭秘有挂)-哔哩哔哩1、新道游开挂辅...
8分钟讲义!中至赣牌圈科技,兴... 8分钟讲义!中至赣牌圈科技,兴动互娱脚本,必胜教程(证实有挂)-哔哩哔哩1、打开软件启动之后找到中间...
一分钟要领!福建兄弟水挂,川友... 一分钟要领!福建兄弟水挂,川友汇辅助软件,总结教程(有挂实锤)-哔哩哔哩1、这是跨平台的川友汇辅助软...
7分钟项目!九九山城插件程序,... 7分钟项目!九九山城插件程序,拱趴游戏诀窍,科技教程(有挂分享)-哔哩哔哩1、九九山城插件程序透视辅...
6分钟学习!雀友会广东潮汕辅助... 6分钟学习!雀友会广东潮汕辅助,hhpoker免费辅助器,攻略教程(有挂方式)-哔哩哔哩运雀友会广东...
四分钟绝活儿!新道游正版辅助,... 四分钟绝活儿!新道游正版辅助,卡农辅助,2025版教程(有挂教程)-哔哩哔哩该软件可以轻松地帮助玩家...
2分钟诀窍!微友辅助器免费版v... 2分钟诀窍!微友辅助器免费版v3.0,川友汇挂牌,透牌教程(有挂教学)-哔哩哔哩1、微友辅助器免费版...
3分钟讲义!甘肃白银麻将辅助软... 3分钟讲义!甘肃白银麻将辅助软件,微信边锋辅助软件,靠谱教程(的确有挂)-哔哩哔哩1、玩家可以在甘肃...
三分钟诀窍!福建兄弟十三水辅助... 三分钟诀窍!福建兄弟十三水辅助器下载,欢乐茶馆辅助,揭秘教程(存在有挂)-哔哩哔哩一、福建兄弟十三水...