Неразрешенная ссылка: setSpan в Котлине - PullRequest
0 голосов
/ 10 января 2019

Я хочу установить символ * в обязательном поле. для этого я могу использовать ниже строки кода:

hint_mobile!!.setText(Html.fromHtml(resources.getString(R.string.mobile_number) + "<sup> * </sup>"));

это работа, но я не могу установить красный цвет для этого символа *

Так что я использую другой пример, как показано ниже:

hint_mobile!!.setText(resources.getString(R.string.mobile_number))
        val str = hint_mobile!!.text.toString()
        val loc = hint_mobile!!.text.toString().indexOf("*")
        str!!.setSpan(ForegroundColorSpan(Color.RED), loc, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE)

Вся кодовая решетка, но ошибка появляется в строке ниже:

str!!.setSpan(ForegroundColorSpan(Color.RED), loc, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE)

ERROR

Unresolved reference: setSpan

Итак, как мне решить эту ошибку ??

Ответы [ 2 ]

0 голосов
/ 11 января 2019

@ Алекс работает, но вы хотите установить позицию, где показывать *. Поэтому я могу использовать приведенный ниже код. Это показывает символ * в конце String.

        var simple : String? = resources.getString(R.string.mobile_number)

        var colored : String?  = " *"

        var builder = SpannableStringBuilder()

        builder.append(simple)
        var start = builder.length
        builder.append(colored)
        var end = builder.length

        builder.setSpan(ForegroundColorSpan(Color.RED), start, end,
                Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)

        hint_mobile!!.setText(builder);
0 голосов
/ 10 января 2019

Вам нужно использовать SpannableString, что-то вроде этого:

val spannableString = SpannableString("${resources.getString(R.string.mobile_number)} *")
val loc = spannableString.toString().indexOf("*")
spannableString.setSpan(ForegroundColorSpan(Color.RED), loc, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE)
hint_mobile!!.setText(spannableString.toString())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...