android compose Navigation 导航 使用

android compose Navigation 导航 使用

复制代码
/**
 * Author : wn
 * Email : maoning20080809@163.com
 * Date : 2026/1/5 20:37
 * Description : Navigation 导航
 */
class NavigationActivity : ComponentActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContent {
            testNavigation()
        }
    }

    @Preview
    @Composable
    private fun testNavigation(){
        val navController = rememberNavController()

        NavHost(navController = navController, startDestination = "home"){
            composable("home") {
                testHomeScreen(navController)
            }
            composable("detail") {
                testDetailsScreen(navController)
            }
        }
    }

    @Composable
    private fun testHomeScreen(navController: NavController){
        Column(modifier = Modifier.fillMaxWidth(),
            verticalArrangement = Arrangement.Center,
            horizontalAlignment = Alignment.CenterHorizontally) {

            Spacer(modifier = Modifier.height(20.dp))
            Text(text = "Navigation导航", fontSize = 30.sp)
            Spacer(modifier = Modifier.height(20.dp))
            Button(onClick = {
                navController.navigate("detail")
            }) {
                Text(text = "跳转到详细页")
            }
        }
    }

    @Composable
    private fun testDetailsScreen(navController: NavController){
        Column(modifier = Modifier.fillMaxSize().background(Color.Green),
            verticalArrangement = Arrangement.Center, 
            horizontalAlignment = Alignment.CenterHorizontally){
            Text(text = "详细页面")
            Button(onClick = {
                navController.popBackStack()
            }) {
                Text(text = "返回")
            }
        }
    }
}
相关推荐
2501_9371892324 分钟前
莫凡电视:地方台专属聚合 稳定直播播放工具
android·源码·源代码管理
耶叶2 小时前
Android 新权限申请模型(Activity Result API)
android
阿拉斯攀登2 小时前
【RK3576 安卓 JNI/NDK 系列 04】JNI 核心语法(下):字符串、数组与对象操作
android·驱动开发·rk3568·瑞芯微·rk安卓驱动·jni字符串操作
2501_915909062 小时前
不用越狱就看不到 iOS App 内部文件?使用 Keymob 查看和导出应用数据目录
android·ios·小程序·https·uni-app·iphone·webview
llxxyy卢2 小时前
web部分中等题目
android·前端
轩情吖2 小时前
MySQL之事务管理
android·后端·mysql·adb·事务·隔离性·原子性
万物得其道者成3 小时前
uni-app Android 离线打包:多环境(prod/dev)配置
android·opencv·uni-app
符哥20083 小时前
Firebase 官方提供的Quick Start-Android 库的功能集讲解
android
koeda3 小时前
android17系统兼容
android·安卓
进击的cc4 小时前
面试官:Handler 没消息时为啥不卡死?带你从源码到底层内核彻底整明白!
android·面试