Java Android中的TextView没有';在'之后不显示任何文本/';性格
我有一个文本视图,显示参数名称、参数值和单位。(如“速度5米/秒”)Java Android中的TextView没有';在'之后不显示任何文本/';性格,java,android,Java,Android,我有一个文本视图,显示参数名称、参数值和单位。(如“速度5米/秒”) m_displayLine2.setLines(1); 因为我需要这个值来改变它的颜色,所以我使用一个处理程序在两个字符串之间切换。这两个字符串都注入了html代码,因此我可以更改颜色,而无需拥有多个TextView m_displayLine2.setLines(1); 我现在的问题是,如果我的字符串中有一个破折号(“/”),那么它后面的所有字符都不会显示 m_displayLine2.setLines(1); 如果我
m_displayLine2.setLines(1);
因为我需要这个值来改变它的颜色,所以我使用一个处理程序在两个字符串之间切换。这两个字符串都注入了html代码,因此我可以更改颜色,而无需拥有多个TextView
m_displayLine2.setLines(1);
我现在的问题是,如果我的字符串中有一个破折号(“/”),那么它后面的所有字符都不会显示
m_displayLine2.setLines(1);
如果我替换字符串中的斜杠,它就会工作。但这并不是真正的解决方案
private void setBlinkText(){
try{
strBlinkOff = "speed <font color='#fafafa'>12</font> m/s";
strBlinkOn = "speed <font color='#212121'>12</font> m/s";
m_displayLine.setText(strBlinkOff.substring(0, strBlinkOff.indexOf('<')));
m_displayLine.append(Html.fromHtml(strBlinkOff.substring(strBlinkOff.indexOf('<'), strBlinkOff.indexOf("font>")), Html.FROM_HTML_MODE_LEGACY));
m_displayLine.append(strBlinkOff.substring(strBlinkOff.indexOf("font>") + 5));
m_blinkHandler = new Handler();
final String strFinalBlinkOn = strBlinkOn;
m_blinkHandler.postDelayed(new Runnable()
{
@Override
public void run()
{
m_displayLine.setText(strFinalBlinkOn.substring(0, strFinalBlinkOn.indexOf('<')));
m_displayLine.append(Html.fromHtml(strFinalBlinkOn.substring(strFinalBlinkOn.indexOf('<'), strFinalBlinkOn.indexOf("font>")), Html.FROM_HTML_MODE_LEGACY));
m_displayLine.append(strFinalBlinkOn.substring(strFinalBlinkOn.indexOf("font>") + 5));
m_blinkHandler.postDelayed(new Runnable()
{
@Override
public void run()
{
setBlinkText(p_strMessage);
}
}, 800);
}
}, 300);
} catch(Exception e)
{
Toast.makeText(getContext(), "Error", Toast.LENGTH_SHORT).show();
}
m_displayLine2.setLines(1);
私有链接文本(){
试一试{
strBlinkOff=“速度12米/秒”;
strBlinkOn=“速度12米/秒”;
m_displayLine.setText(strBlinkOff.substring)(0,strBlinkOff.indexOf(“尝试使用&sol;
而不是
来代替看起来maxLines属性被忽略了,因为我在设置文本视图后将文本追加到文本中。我通过设置
m_displayLine2.setLines(1);
在追加字符串的所有部分后再次执行。尝试使用&sol;
而不是/
m_displayLine2.setLines(1);