android compose BottomNavigation(底部) 使用

android compose BottomNavigation(底部) 使用

复制代码
/**
 * Author : wn
 * Email : maoning20080809@163.com
 * Date : 2026/1/3 13:06
 * Description : BottomNavigation 底部导航栏
 */
class BottomNavigationActivity : ComponentActivity(){

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

        setContent {
            testBottomNavigation()
        }
    }

    @Preview
    @Composable
    private fun testBottomNavigation(){
        //要添加Composable,导入:import androidx.compose.runtime.getValue和import androidx.compose.runtime.setValue
        var selectedItem by remember { mutableStateOf(0) }
        val items = listOf<String>("Home", "Search", "Profile")
        val icons = listOf(Icons.Default.Home, Icons.Default.Search, Icons.Default.Person)

        Scaffold(bottomBar = {
            NavigationBar() {
                items.forEachIndexed {index, item ->
                    NavigationBarItem(
                        icon = {Icon(icons[index], contentDescription = item)},
                        label = {Text(item)},
                        selected = selectedItem == index,
                        onClick = {selectedItem = index }
                    )
                }
            }
        }) {
            when(selectedItem){
                0 -> testHome()
                1 -> testSearch()
                2 -> testProfile()
            }
        }
    }

    @Composable
    private fun testHome(){
        Text(text = "Home 页面")
    }

    @Composable
    private fun testSearch(){
        Text(text = "Search 页面", fontSize = 30.sp, color = Color.Red)
    }

    @Composable
    private fun testProfile(){
        Text(text = "Profile 页面", fontSize = 30.sp, color = Color.Blue)
    }

}
相关推荐
Lesile1 小时前
Android:Hilt框架入门 · 在ViewUI和ComposeUI下的应用
android·android jetpack
用户423816229072 小时前
Android 16 WebView 页面顶部挖孔/通知栏不能显示UI问题排查
android
weixin_727535622 小时前
Loop 已死,Graph 新生:AI 工作流的范式革命
android·人工智能·rxjava
严同学正在努力3 小时前
从备份到恢复:我用 30 分钟恢复了误删的核心业务表
android·java·数据库·ai
a1117763 小时前
中文优先的企业 RAG 知识库 开源项目
开发语言·开源·kotlin
梦想三三4 小时前
LangChain Output Parser 实战:从字符串到结构化数据的完整指南
android·服务器·langchain·github·uv
爱笑鱼6 小时前
Binder(八):远端进程死了,BinderProxy 为什么还能收到通知?
android
Android-Flutter6 小时前
Kotlin 冷流与热流详解
android·kotlin
zhangphil6 小时前
Android ContentProvider/ContentResolver读图片,跨进程 IPC慢
android
yueqc17 小时前
Android .so 文件压缩
android·so·包体积