SpannableString в EditText To Capture @symbol и исходящий текст до пробела - PullRequest
0 голосов
/ 16 октября 2018

Это я пытаюсь использовать приведенный ниже код, чтобы поймать, когда пользователь вводит @symbol, а затем выделяет исходный текст в tag_color, независимо от того, где он напечатан в mPostTextView.После ввода пробела выделенный текст снова становится черным.Как и дизайн типа @mentions в приложениях для социальных сетей.Я все еще относительно новичок в разработке Android, поэтому не слишком уверен, как это сделать без ошибок.

@Override
        public void onTextChanged(CharSequence charSequence, int start, int before, int count) {
            //@Mentions for tagging user
            if (charSequence.toString().contains("@") {
                SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(mPostToText.getText().toString());
                ForegroundColorSpan foregroundSpan = new ForegroundColorSpan(ContextCompat.getColor(getContext(), R.color.tag_color));
                spannableStringBuilder.setSpan(foregroundSpan, start, spannableStringBuilder.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
                mPostToText.setText(spannableStringBuilder);

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