Java 如何设置我的textview以显示json数组中的所有元素
正在解析json,我正在尝试设置一个textview来执行数组中的所有元素。很明显,我在这里做错了什么,如果有任何帮助,我将不胜感激Java 如何设置我的textview以显示json数组中的所有元素,java,android,json,Java,Android,Json,正在解析json,我正在尝试设置一个textview来执行数组中的所有元素。很明显,我在这里做错了什么,如果有任何帮助,我将不胜感激 TextView tv1 = (TextView) findViewById(R.id.textView1); TextView tv2 = (TextView) findViewById(R.id.textView2); try { String buildings = getJSON("h
TextView tv1 = (TextView) findViewById(R.id.textView1);
TextView tv2 = (TextView) findViewById(R.id.textView2);
try {
String buildings = getJSON("http://iam.colum.edu/portfolio/api/course?json=True");
//JSONObject jsonObject = new JSONObject(buildings);
JSONArray queryArray = new JSONArray(buildings);
//queryArray = queryArray.getJSONArray(0);
List<String> list = new ArrayList<String>();
for (int i=0; i<queryArray.length(); i++) {
list.add( queryArray.getString(i) );
}
String text = list.get(0).toString();
String arr[] = text.split(" ");
arr[0] = arr[0].trim();
for(int i=0;i>queryArray.length();++i)
{
tv1.setText(list[i]);
}
这里有一个无限循环
for(int i=0;i>queryArray.length();++i)
{
tv1.setText(list[i]);
}
此外,每次循环运行时,上面的代码段都会在textview上显示列表中的一行。它不会将文本附加到textview上。尽量优化你的代码,这样你就可以在一个循环中完成任务
StringBuilder sb = new StringBuilder();
for (int i=0; i<queryArray.length(); i++) {
// chain each string, separated with a new line
sb.append(queryArray.getString(i) + "\n");
}
// display the content on textview
tv1.setText(sb.toString());
参考:用这个都德:你根本没用这个
TextView tv1 = (TextView) findViewById(R.id.textView1);
TextView tv2 = (TextView) findViewById(R.id.textView2);
try {
String buildings = getJSON("http://iam.colum.edu/portfolio/api/course?json=True");
//JSONObject jsonObject = new JSONObject(buildings);
JSONArray queryArray = new JSONArray(buildings);
//queryArray = queryArray.getJSONArray(0);
List<String> list = new ArrayList<String>();
for (int i=0; i<queryArray.length(); i++) {
list.add( queryArray.getString(i) );
}
String finaltext="";
for(int i=0;i>list.size();i++)
{
finaltext.concat(list.get(i));
}
tv1.setText(finaltext.trim());
您遇到了什么问题?请思考一下您的代码。。setText方法不追加文本。请使用tv1.appendlist.geti0;或者tv1.setTexttv1.getText+list.getiAnd i>queryArray.length不起作用。。。应该是我,雷。length@Raghunandan我想你的意思是tv1.setTexttv1.getText+list.geti…list是一个list对象它不是一个无限循环,它只会跳过for循环。但是,是的,这就是问题所在。