小编amt*_*rax的帖子

如何使用 Jetpack Compose 隐藏 ActionBar

我想隐藏默认操作栏,因此在清单文件中我有以下代码:

    <style name="Theme.MyCompose" parent="Theme.Material.DayNight.NoActionBar">
</style>

<style name="Theme.Material.DayNight.NoActionBar" parent="@android:style/Theme.Material.Light.NoActionBar" />
Run Code Online (Sandbox Code Playgroud)

而效果是这样的:

在此输入图像描述

我想要实现的目标是这样的:

在此输入图像描述

摄影应覆盖白色区域。如何做到这一点?

更新1

在实施具有半透明状态栏和伴奏插图支持的解决方案后,我遇到了奇怪的行为。当窗口标志设置如下时:

 window.setFlags(
        WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
        WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
    )
Run Code Online (Sandbox Code Playgroud)

尽管插图已打开,但一切看起来都是这样的: 在此输入图像描述

当删除这些标志时,插图可以工作,但我有那个阴影:

在此输入图像描述

android user-experience kotlin android-actionbar android-jetpack-compose

7
推荐指数
1
解决办法
8395
查看次数

Recycler Adapter 内的协程

出于 Room db 的目的。我想在回收器视图中运行一些协程。

必要的挂起函数作为类参数处理:

class RecyclerAdapter  (private val  exist : suspend (lastName : String) -> Boolean) 
Run Code Online (Sandbox Code Playgroud)

然后,当需要时,我使用以下结构:

GlobalScope.launch(Dispatchers.IO) {
   if (exist(dataSet[position].lastName))
       [...]
Run Code Online (Sandbox Code Playgroud)

我不确定使用全局范围是否是最佳实践。我考虑过使用lifecycleScope,但在 Adapter 中lifecycleOwner不可用,将其作为参数处理不是一个好的做法。

你们有什么建议?

android kotlin android-room kotlin-coroutines

5
推荐指数
2
解决办法
7596
查看次数

在 Jetpack Compose 中实现后退导航

我有一个顶部栏,IconButton用于在单击时处理后退导航。

作为回调传递的函数的实现如下:

private fun navigateBack(navController: NavController) {
    val route = navController.previousBackStackEntry?.destination?.route ?: ""
    navController.navigate(route)
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,它的工作方式与图片中显示的默认 Android 底部导航不同

在此输入图像描述

有没有办法实现与底部系统导航相同的后退导航?

navigation android kotlin android-jetpack-compose

5
推荐指数
1
解决办法
9752
查看次数