2013-04-22 43 views
1

嗨, 我用這個代碼:要改變每行的顏色在android系統

String displayText = ""; 
    try { 
     InputStream fileStream = getResources().openRawResource(
          R.raw.t); 
     int fileLen = fileStream.available(); 
     // Read the entire resource into a local byte buffer. 
     byte[] fileBuffer = new byte[fileLen]; 
     fileStream.read(fileBuffer); 
     fileStream.close(); 
     displayText = new String(fileBuffer); 
     } catch (IOException e) { 
      // exception handling 
     } 

    TextView tv=(TextView) findViewById(R.id.textView1); 
    tv.setText(displayText); 


} 

這是用於顯示文本文件。 我想改變每一行的顏色(並改變行間的一條線的顏色) 我該怎麼辦?

我爲不好講英語

回答

2

我建議你使用HTML來設置顏色在你的TextView遺憾。這2種顏色之間交換一個小例子:

String textcontent = ""; 
String[] lines; 
//something like "lines = displayText.split("\n")" or however you stored line returns 
for (int i = 0; i < lines.length; i++) { 
    //odd line numbers are red, the even ones green 
    textcontent += "<font color=\"" + (i%2==0?"red":"green") + "\">" + lines[i] + "</font><br/>"; 
} 
TextView tv=(TextView) findViewById(R.id.textView1); 
tv.setText(Html.fromHtml(textcontent)); 

我希望這有助於,否則隨時索要更多...

+0

&我可以使用自定義字體,這種方式? – 2013-04-22 13:06:43

+1

當然,像面子= \「格魯吉亞\」應該做的伎倆。查看[這個信息](http://www.w3schools.com/tags/tag_font.asp)瞭解更多關於font-tag的信息,其他一些html標籤也可以工作.. Happy coding =) – 2013-04-22 13:21:48