Я хотел бы получить эквивалентный код для строки ниже в Котлине:
TextView tv = view.findViewbyId(R.id.textView);
Любая помощь?
очень просто, просто выполните следующие действия
val valueName = view!!.findViewById<ObjectName>(R.id.ObjectId)
также с этой отметкой !!
kotlin будет проверено нулевое состояние
наконец, см. следующий пример
val btn = view!!.findViewById<Button>(R.id.btn)
Почему бы вам просто не использовать привязку Kotlin Android? Это расширение от Kotlin помогает привязать представление без какого-либо кода «bindView» или findViewById, чтобы помешать бизнес-логике.
После того, как вы вникнете в него, вы определенно найдете это замечательным и меньше кода, написанного впоследствии.
Стоит посмотреть. https://kotlinlang.org/docs/tutorials/android-plugin.html
Но вы все равно можете использовать оригинальный с kotlin
val lblLabel = findViewById(R.id.text) as TextView
val tv: TextView = findViewById(R.id.textView) as TextView
если вы хотите объявить textview во всем мире, используйте lateinit var tv: TextView
как это вы можете сделать в kotlin
val lv = findViewById(R.id.textView) as TextView
Инициализация Котлина:
val tv = findViewbyId(R.id.textView) as TextView
См. Здесь
Вы можете использовать:
val myLabel = findViewById(R.id.text) as TextView
Однако вы можете использовать плагин Kotlin Android Extensions .
Просто добавьте в свой build.gradle
apply plugin: 'kotlin-android-extensions'
Затем вы можете избежать использования метода findViewById
используя, например:
textView.text = "My text"
Вы можете получить доступ к представлению, не найдя его или используя сторонние библиотеки, просто используя id
назначенный в XML-файле.
Инициализация представления в фрагменте:
val manageAddress=view.findViewById<TextView>(R.id.textView)
это оно