java.lang.NoSuchFieldException: mFocusedTextColor при настройке texthintColor - PullRequest
0 голосов
/ 30 января 2019

Я надуваю динамический TextInputLayout и хочу изменить texthintColor и использовать следующее, но в итоге выкидываю исключение

private fun setInputTextLayoutColor(color: Int, textInputLayout: TextInputLayout) {
    try {
        val field = textInputLayout.javaClass.getDeclaredField("mFocusedTextColor")
        field.isAccessible = true
        val states = arrayOf(intArrayOf())
        val colors = intArrayOf(color)
        val myList = ColorStateList(states, colors)
        field.set(textInputLayout, myList)

        val fDefaultTextColor = TextInputLayout::class.java.getDeclaredField("mDefaultTextColor")
        fDefaultTextColor.isAccessible = true
        fDefaultTextColor.set(textInputLayout, myList)

        val method =
            textInputLayout.javaClass.getDeclaredMethod("updateLabelState", Boolean::class.javaPrimitiveType)
        method.isAccessible = true
        method.invoke(textInputLayout, true)

    } catch (e: Exception) {
        e.printStackTrace()
    }

}
setInputTextLayoutColor(resources.getColor(R.color.colorPrimary),myTextInputLayout)

версия библиотеки поддержки

    implementation 'com.android.support:design:28.0.0'

Exception printStackTrace:

java.lang.NoSuchFieldException: mFocusedTextColor
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...