请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,为什么我通过by lazy 这种延迟初始化的时候,findViewById会提示编译错误???

老师,为什么我通过by lazy 这种延迟初始化的时候,findViewById会提示编译错误???

正在回答

1回答

你贴一下你的代码。

0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕用0112456 #1
    class MainActivity : AppCompatActivity() {
        //属性延迟初始化
        private val BtnNull:Button?=null
        private lateinit var btnLateInit:Button
        private val btnLazy by lazy { 
            findViewById(R.id.btn_lazy)
        }
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_main)
            //lateinit需要初始化的
            btnLateInit.findViewById<Button>(R.id.btn_lateinit)
        }
    }
    回复 有任何疑惑可以回复我~ 2020-12-04 12:36:34
  • bennyhuo 回复 提问者 weixin_慕用0112456 #2
    你的btnLateInit在哪儿初始化的?
    回复 有任何疑惑可以回复我~ 2020-12-04 14:41:32
  • 提问者 weixin_慕用0112456 回复 bennyhuo #3
    在onCreat里面初始化的,但是出问题的是by lazy
    回复 有任何疑惑可以回复我~ 2020-12-05 11:53:54
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号