【问题标题】:How to use activity as a navigator in compose如何在撰写中使用活动作为导航器
【发布时间】:2020-11-02 14:32:01
【问题描述】:

我使用官方示例OwlApp的导航作为我的主要导航系统,我想在我的项目中实现camerax。但是在撰写中没有简单的方法来结合相机,所以我认为如果有办法让具有相机屏幕的活动作为撰写目的地,那么我可以像应用程序一样正常导航它。

【问题讨论】:

  • 所以您正在寻找一种在Composable 函数中启动新活动的方法?
  • 我试图传递任何与活动相关的变量和函数来组合工作。

标签: android android-activity android-navigation android-jetpack-compose


【解决方案1】:

您可以通过将 lambda 传递给可组合函数并在可组合函数外部(在您的活动内部)实现逻辑来处理此问题。

class MainActivity : AppCompatActivity() {

    lateinit var onCameraClick : () -> Unit

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            SampleTheme {
                Surface(color = MaterialTheme.colors.background) {
                    MainView(onCameraClick = onCameraClick)
                }
            }
        }

        onCameraClick = {
            // Camera logic inside activity scope.
        }
    }
}

@Composable
fun MainView(onCameraClick : () -> Unit) {
    Button(onClick = onCameraClick) {
        Text(text = "Camera")
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-04
    • 1970-01-01
    • 1970-01-01
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多