当前位置: 首页 > news >正文

Android Studio第一个kotlin项目“Hello Android”

现在的Android Studio默认的kotlin demo和之前一些书上记载的又不一样了。全面使用kotlin+Jetpack Compose方式编写,继Data Binding 后推广,但是少了layout布局,初看一头雾水。这里查阅了一些资料,简单解释一下,备忘。

代码总体分为三段:
MainActivity中onCreate和之前一样。
Greeting方法中包含了text和布局。
GreetingPreview方法用于预览。

// MainActivity 继承自 ComponentActivity,这是 Android 中支持 Compose 的基本 Activity 类
class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)// enableEdgeToEdge() 让应用内容延伸到系统栏(状态栏和导航栏)下面。enableEdgeToEdge()// Compose 的入口点,在这里定义 UI。setContent {// 是一个自定义主题,通常由 Android Studio 的 Compose 模板生成。KotlinDemoTheme {// Scaffold 是一个 Compose 布局,提供基本的 Material Design 布局结构。// modifier = Modifier.fillMaxSize() 使 Scaffold 填满整个可用空间// innerPadding 是 Scaffold 提供的内部 padding,用于考虑系统栏等Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->Greeting(name = "Android",modifier = Modifier.padding(innerPadding))}}}}
}// @Composable 注解表示这是一个 Compose 函数,可以描述 UI。
@Composable
// name: String - 要显示的名称
// modifier: Modifier - 用于调整布局和外观的修饰符,有默认值
fun Greeting(name: String, modifier: Modifier = Modifier) {Text(text = "Hello $name!",modifier = modifier)
}// @Preview 注解表示这是一个预览函数,可以在 Android Studio 的设计工具中查看。
// showBackground = true 表示在预览中显示背景
@Preview(showBackground = true)
@Composable
fun GreetingPreview() {KotlinDemoTheme {// 调用 Greeting("Android") 显示预览内容Greeting("Android")}
}

Android Studio 预览
在这里插入图片描述
实机展示
在这里插入图片描述

参考谷歌:
Jetpack Compose 基础知识

http://www.xdnf.cn/news/1262449.html

相关文章:

  • kafak
  • windows自动获取wsl IP,并开启端口转发。
  • 【代码随想录day 14】 力扣 111.二叉树的最小深度
  • Axure基于中继器实现的组件库(导航菜单、动态表格)
  • Array Description(Dynamic programming)
  • 在发布应用程序内测时如何选择合适的分发上架方式?
  • Git 基础操作笔记(速查)
  • 视频遥测终端机是什么,其工作原理和应用领域
  • 高校合作 | 世冠科技联合普华、北邮项目入选教育部第二批工程案例
  • 01数据结构-图的概念和图的存储结构
  • 数据结构---二叉树(概念、特点、分类、特性、读取顺序、例题)、gdb调试指令、时间复杂度(概念、大O符号法、分类)
  • 【世纪龙科技】数智重构车身实训-汽车车身测量虚拟实训软件
  • 二叉树实现
  • Docker 创建镜像错误记录
  • Redis缓存击穿、穿透雪崩
  • 【NFTurbo】基于DockerCompose一键部署
  • gmssl私钥文件格式
  • 用户组权限及高级权限管理:从基础到企业级 sudo 提权实战
  • 《从零构建大语言模型》学习笔记2,文本数据处理1(以及tiktoken库无法下载gpt2参数,调用get_encoding时SSL超时的解决方法)
  • Redis是单线程性能还高的原因
  • SaaS 版 MES 系统业务文档
  • 【SpringBoot】SpringBoot配置
  • GPT OSS 双模型上线,百度百舸全面支持快速部署
  • 华为USG防火墙双机,但ISP只给了1个IP, 怎么办?
  • 医防融合中心-智慧化慢病全程管理医疗AI系统开发(上)
  • C++信息学奥赛一本通-第一部分-基础一-第2章-第5节
  • 单层 PDF 与双层 PDF:一字之差,功能大不同
  • 修复C++14兼容性问题 逻辑检查
  • 力扣-238.除自身以外数组的乘积
  • FileLink:企业数据传输的革新者​