2.布局
我们编写的应用界面几乎任何时候都不会是简简单单的单一的控件,而是一定数量的独立控件在空间上的一种组合。
首先,我们就盲猜,如果我想竖直方向排列三个文字组件,肯定不是像下面这样随便组合三个 Text
控件。它怎么可能那么聪明,能知道你是想横着排还是竖着排,想并排排还是旋转开。怎么可能有人比苏菲更懂你!
@Composable
fun VerticalText() {
Text(“Hello World!”)
Text(“Hello Again World!”)
Text(“How old are you, World!”)
}
那,就组合喽。
@Composable
fun VerticalText() {
Column {
Text(“Hello World!”)
Text(“Hello Again World!”)
Text(“How old are you, World!”)
}
}
给三个 Text
约定个竖框框,它们就能乖乖地排起队。
这里,悄摸摸地说一句,这要是没有~偷瞄 Flutter 的考卷~ 向优秀的思想借鉴,我把三个 Text
布局在我脑门上!
当然,只有这么生硬的排列可不行,我们还需要加点属性,使得整个布局更和谐点——例如,加点边距。
我们希望给 Column
加一个内边距,那么我们就应该给 Column
添加一个属性。Modifier
类用来给组件添加装饰或者行为,如背景、边距、点击事件等。
@Preview(showBackground = true)
@Composable
fun VerticalText() {
Column(
modifier = Modifier.padding(16.dp)
) {
Text(“Hello World!”)
Text(“Hello Again World!”)
Text(“How old are you, World!”)
}
}
现在,为了让界面看起来不那么单调,我们给这个界面加上下面这一张图片。
![](Compose 初体验.assets/hello_world_new_black.png)
将这张图片拷贝到 drawable
资源文件夹下面,然后通过下面的方式引用。
@Preview(showBackground = true)
@Composable
fun VerticalText() {
Column(
modifier = Modifier.padding(16.dp)
) {
Image(<