請教高手!爲何在Log中的我數據都顯示出來了,可是在.setText()中只顯示最後一條數據?

============問題描述============java


作了一個解析百度天氣JSON數據的功能,results裏面用的是GSON解析。如今在Log裏面顯示數據已經解析出來了,可是在TextView界面.setText()上數據只能顯示最後一條,這是爲何啊?

List<WeatherInfo.index> myIndex = weatherInfo.getIndex();

for (index in : myIndex) {

	Log.i(TGA, "Des = " + in.getTipt() + ":" + in.getDes());

	indexContent.setText(in.getTipt() + ":" + in.getDes() + "\n");

}

============解決方案1============app


每循環一次textview的文本就從新set了一遍,不是顯示最後set的那條文本那顯示什麼。。

============解決方案2============blog


弄一個 StringBuffer做爲全局變量,而後每次有新東西的時候 append, 最後 setText(buffer.toString())

不過估計你不會喜歡這種,仍是建議使用 ListView, 將你讀取到的數據解析後實體化,而後使用適配器顯示

============解決方案3============ip

3樓的方法能夠這麼改:String str = ""; for(index in : myIndex){      str += (in.getTipt() + ":" + in.getDes() + "\n"); } indexContent.setText(str);
相關文章
相關標籤/搜索