Kotlin View setEnabled function missing?

2019-01-20 12:50发布

问题:

In Kotlin, when using kotlinx.android.synthetic to access the View (e.g. Button), the setEnabled() function is missing? The isEnabled() function is still there.

How could I setEnabled()?

回答1:

As said in the reference, Java getters and pairs of getter and setter are represented as properties in Kotlin, using the following logic:

  • T getSomething() (+ void setSomething(T)) → something: T
  • T isSomething() (+ void setSomething(T)) → isSomething: T

If there is a setter, a var-property is seen from Kotlin, otherwise it's an unmodifiable val.

Instead of setEnabled(value) just use isEnabled = value.



回答2:

Apparently we now set it using

button.isEnabled = true