Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
by Delegates.notNull() нужна чтобы поле mHelloWorldTextView имело тип TextView, а не TextView?, чтобы не было всяких операторов типа "?." и "!!.".private var mHelloWorldTextView : TextView = //???
private val mHelloWorldTextView : TextView by Delegates.lazy { findViewById(R.id.helloWorldTextView) as TextView }
private fun editTextStyle(editText: EditText) {
editText.textSize = 18f
editText.textColor = Color.RED
}
//=>
relativeLayout {
editText {
style { editTextStyle(this) }
}.layoutParams { centerInParent(); }
}
fun ViewManager.myView(init: MyView.() -> Unit = {}) =
__dslAddView({ MyView(it) }, init, this)
relativeLayout {
myView {
//...
}
}
val size = dip(getResources().getDimension(R.dimen.my_dimen))
private fun portrait() {
linearLayout {
}
}
private fun landscape() {
relativeLayout {
}
}
//=>
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
landscape()
}
else {
portrait()
}
<style name="TxtStyle" parent="Theme.AppCompat.Light">
<item name="android:textSize">18dp</item>
<item name="android:textColor">#ff0000</item>
</style>relativeLayout {
ankoView({ TextView(ContextThemeWrapper(ctx, R.style.TxtStyle)) }) {
}.layoutParams { centerInParent(); }
}
Kotlin для Android