相关疑难解决方法(0)

如何使用 Jetpack Compose 和 Compose Navigation 处理 Android 活动?

我目前正在研究 Jetpack Compose,试图使用现代 Android 架构组件构建功能丰富的应用程序。传统上,我的应用程序中的每个屏幕(或导航单元)都是一个 Activity 或一个 Fragment,每个屏幕都有自己的生命周期绑定,但使用 Jetpack Compose 和 Compose Navigation 库,我会执行以下操作:

MainActivity.kt

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            val navController = rememberNavController()

            NavHost(navController = navController, startDestination = "main") {
                composable("main") { MainScreen(navController) }
                // More composable calls
            }
        }
    }
}

Run Code Online (Sandbox Code Playgroud)

哪里MainScreen只是一个可组合项。我的问题是:

  • 此可组合项的“生命周期”相当于什么?假设我想在屏幕加载、销毁等时执行某些操作。这可能与我有更多屏幕和它们之间的导航的情况更相关
  • 是否有某种方法可以在 Compose 和标准活动之间进行集成?也就是说,像您一样为屏幕定义活动,每个活动都是一个ComponentActivity并定义自己的可组合布局?是否因某种原因而灰心丧气?

android kotlin android-jetpack-compose

28
推荐指数
1
解决办法
2万
查看次数

Fragments 对 jetpack compose 没有用吗?

据我所知,在 jetpack-compose 之前,最好的做法是拥有一个 Activity,然后为您的应用程序使用多个片段。但是现在 jetpack compose 提供了 jetpack compose 功能之间的导航,所以我们现在需要片段吗?或者,如果我们不再需要片段,我们可以只使用具有多个屏幕的单个活动(撰写功能),我如何在仅使用单个活动和撰写功能的同时在数据库中添加/编辑、获取上下文等内容。我仍然是一个初学者/学习者,所以我可能会错过一些东西或做错一些事情。

android android-jetpack-compose jetpack-compose-navigation

6
推荐指数
0
解决办法
1053
查看次数