Android开发新范式
新的方式
自2007
年11
月诞生以来,Android已经走过了17个年头。
Android的应用开发语言从最开始的Java变成了现在的Kotlin,而且布局方式也从过去的XML命令式
,变成了现在的Jetpack Compose声明式
。
在从旧技术过度到新技术的过程中,不仅要学习新的语言,还要适应新的布局方式,这种学习曲线非常陡峭,而且官方给的文档也比较乱。
Compose新手教程:这应该是从设计思想的角度来解读
Jetpack Compose
。Jetpack Compose教程:这应该是从
UI
组件的角度来学习Jetpack Compose
。
这是因为目前依然是处于从XML
过渡到Compose
的时期,所以创建项目的时候还可以选择两种不同的布局方式。

不过Compose
是大势所趋,迟早会完全替代XML
的。
新的Android Studio界面也有些不同。
刚创建好的项目是这样子的。

但过一会它就会变成这样子。

左侧可以切换几种不同的布局
。
Project
:显示项目中所有的文件和文件夹,包括所有依赖的库和第三方组件。Project Files
:仅显示项目文件和文件夹,不包括依赖的库和第三方组件。Production
:仅显示src
文件夹下的源码文件和资源文件。Tests
:仅显示src
文件夹下的androidTest
包和test
包。Project Source Files
:同时显示Production
和Tests
。Android
:以Android的风格显示标准的文件视图和组织方式。
初始Bug
用Android Studio创建的新项目,即使什么都不改,预览的时候也会报错,不知道这算不算官方的Bug
。

所见即所得
@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
Text(
text = "Hello $name!",
modifier = modifier
)
}
@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
HelloWorldTheme {
Greeting("Android")
}
}
这两段代码的作用就是以注解的方式来预览UI
组件的效果,而不必等到运行时才能看到它的样子。

如果想修改文本组件的样式,可以通过修改modifier
实现。
......
@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
Text(
text = "Hello $name!",
// 修改内边距
modifier = modifier.padding(30.dp)
)
}
......

不得不说,Android和HarmonyOS已经越来越像了。
感谢支持
更多内容,请移步《超级个体》。