Android视图模型(ViewModel)的回调函数与Bundle的作用域不兼容。
创始人
2024-10-10 13:01:13
0

在 Fragment 或 Activity 中,ViewModel 的回调函数无法获取包含其生命周期的 Bundle 的数据。为了解决这个问题,可以在 ViewModel 中使用 SavedStateHandle 对象来访问 Bundle 数据。

示例代码如下:

class MyViewModel(private val savedState: SavedStateHandle) : ViewModel() {

    fun getData() {
        val data = savedState.get("myKey")
        // use data here
    }
}

在 Fragment 或 Activity 中,创建 ViewModel 的时候,可以将包含其生命周期的 Bundle 传递给 SavedStateHandle 对象。

示例代码如下:

class MyFragment : Fragment() {

    private val viewModel: MyViewModel by viewModels()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val data = arguments?.getString("myKey")
        viewModel.savedState.set("myKey", data)
    }

    // rest of the fragment code here
}

相关内容

热门资讯

重大通报!微信新海贝之城辅助,... 重大通报!微信新海贝之城辅助,福麻圈辅助,详细app(有挂讲解)1、首先打开微信新海贝之城辅助辅助器...
教程辅助!闲逸辅助软件下载苹果... 教程辅助!闲逸辅助软件下载苹果,四川熊猫辅助软件视频,详细插件(发现有挂)一、闲逸辅助软件下载苹果游...
传递经验!八闽福建辅助,开心庄... 传递经验!八闽福建辅助,开心庄园脚本辅助器,详细软件(有挂讲解)1、开心庄园脚本辅助器透视辅助软件激...
科技通报!堆金城陕西辅助器,朋... 您好,朋朋政和510k辅助器这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】...
玩家必看!多乐辅助app,拼十... 玩家必看!多乐辅助app,拼十辅助器,详细插件(有挂讲解)拼十辅助器能透视中分为三种模型:拼十辅助器...
推荐十款!授权二厅辅助,决战十... 推荐十款!授权二厅辅助,决战十水三辅助,详细教程(有挂教程)1、让任何用户在无需决战十水三辅助安装教...
玩家攻略推荐!潮汕掌上娱破解,... 玩家攻略推荐!潮汕掌上娱破解,途游辅助软件网站,详细教程(果真有挂)1、操作简单,无需途游辅助软件网...
技术分享!江西中至科技,打两圈... 技术分享!江西中至科技,打两圈怀疑有外挂,详细软件(有挂讲解)1、金币登录送、破产送、升级送、活动送...
我来教大家!玫瑰大厅辅助,乐乐... 我来教大家!玫瑰大厅辅助,乐乐围棋入门脚本,详细工具(详细教程)1、操作简单,无需乐乐围棋入门脚本手...
玩家亲测!超级三加一视频,八闽... 玩家亲测!超级三加一视频,八闽掌上十八卦脚本,详细器(有挂存在)1、用户打开应用后不用登录就可以直接...