Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我正试着在Marshamallow上使用Spanable。它给了我错误的输出_Android_Textview_Spannablestring_Spannable - Fatal编程技术网

Android 我正试着在Marshamallow上使用Spanable。它给了我错误的输出

Android 我正试着在Marshamallow上使用Spanable。它给了我错误的输出,android,textview,spannablestring,spannable,Android,Textview,Spannablestring,Spannable,我只得到“HL”作为输出。您的开始和结束参数对于第二个setSpan是错误的: SpannableString text = new SpannableString("RAHUL"); text.setSpan(new ForegroundColorSpan(white), 0, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); text.setSpan(new ForegroundColorSpan(blue), 3

我只得到“HL”作为输出。

您的开始和结束参数对于第二个
setSpan
是错误的:

        SpannableString text = new SpannableString("RAHUL");
        text.setSpan(new ForegroundColorSpan(white), 0, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        text.setSpan(new ForegroundColorSpan(blue), 3, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        headerHolder.mTextViewLabel.setText(text, TextView.BufferType.SPANNABLE);

检查输出

SpannableString text = new SpannableString("RAHUL");
text.setSpan(new ForegroundColorSpan(Color.WHITE), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
text.setSpan(new ForegroundColorSpan(Color.BLUE), 3, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
headerHolder.mTextViewLabel.setText(text, TextView.BufferType.SPANNABLE);
棉花糖产量


希望它能对你有所帮助

试试这个,它可能会对你有所帮助 改变

而不是这个

    text.setSpan(new ForegroundColorSpan(white), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setSpan(new ForegroundColorSpan(blue), 3, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

预期输出为两种不同颜色的RAHUL,即白色的RAH和蓝色的UL。这是因为
白色
蓝色
均为0(或至少位24-31为零)@pskink I使用butterknife注入颜色@BindColor(R.color.blue)int-blue@BindColor(R.color.white)内白;我想这有点问题。如果我用Color.BLUE来代替它,效果会很好。记录蓝和白的值,它们是什么?@pskink是的,它们只有0。谢谢。我用butterknife来注入颜色@BindColor(R.color.blue)int-blue@BindColor(R.color.white)内白;我想这有点问题。如果我用Color.BLUE来代替它,它就工作了。
    text.setSpan(new ForegroundColorSpan(white), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setSpan(new ForegroundColorSpan(blue), 3, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setSpan(new ForegroundColorSpan(white), 0, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setSpan(new ForegroundColorSpan(blue), 3, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);