return 与 = 灵活应用
例1
fun sum(a: Int,b: Int): Int{
return a+b
}
fun sum(a: Int,b: Int) = a + b
例2
fun max(a: Int, b: Int): Int {
if (a > b)
return a
else
return b
}
fun max(a: Int, b: Int) = if (a > b) a else b
例3
fun initUI(): LinearLayout {
return verticalLayout {
button {
text = "one"
}
textView {
text = "two"
}.lparams {
width = matchParent
gravity = Gravity.CENTER_HORIZONTAL
}
}
}
fun initUI() = verticalLayout {
button {
text = "one"
}
textView {
text = "two"
}.lparams {
width = matchParent
gravity = Gravity.CENTER_HORIZONTAL
}
}
例二实现的界面效果
注:
1、用Anko写布局文件时,lparams后写该控件的LayoutParams属性。如果指定lparams(),但省略width或height,则它们的默认值都是wrap_content。
2、LayoutParams它封装了Layout(布局)的位置、高、宽等信息,位置信息即为是否居中,左右边距等问题。