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属性,我们可以确保它不为空。

相关内容

热门资讯

透视ai"wepok... 1、透视ai"wepoker公共底牌"详细辅助安装教程(私人局开挂视频透明)。2、wepoker公共...
透视苹果版"约局吧开... 透视苹果版"约局吧开挂神器是真的吗"详细辅助技巧教程(游戏下载教程)是由北京得约局吧开挂神器是真的吗...
透视攻略"werpl... 透视攻略"werplan脚本"详细辅助微扑克教程(透视app下载攻略)1、很好的工具软件,可以解锁游...
透视存在"we-po... 1、透视存在"we-poker是什么软件"详细辅助存在挂教程(透视方法技巧)。2、we-poker是...
透视科技"wepok... 1、透视科技"wepoker插件下载"详细辅助攻略教程(游戏下载辅助)。2、wepoker插件下载透...
透视了解"impok... 透视了解"impoker辅助"详细辅助黑科技教程(有透视功能技巧);支持2-10人实时对战,虚拟庄家...
透视神器"wepok... 透视神器"wepokerplus万能挂"详细辅助扑克教程(透视脚本安卓攻略)是由北京得wepoker...
透视免费"hhpok... 透视免费"hhpoker是正规的吗"详细辅助2025新版总结(辅助器安装包定制技巧)科技教程也叫必备...
透视脚本"菠萝辅助器... 这是一款非常优秀的菠萝辅助器免费版的功能介绍 ia辅助检测软件,能够让你了解到菠萝辅助器免费版的功能...
透视挂透视"hhpo... 1、透视挂透视"hhpoker德州真的假的"详细辅助可靠教程(辅助器有哪些功能技巧);详细教程。2、...