我的代码有点问题。Android返回两个项目,但只显示一个
我想在for循环中获取两个值,但只显示一个值。
这里是我的代码
public class ReturnValue
{
public String item;
public String item_intro;
}
public ArrayList<ReturnValue> populate() {
ArrayList<ReturnValue> returnValues = new ArrayList<ReturnValue>();
while {
ReturnValue rv = new ReturnValue();
try {
URL url = new URL
("http://www.wvvzondag2.nl/android/fillverslag.php");
HttpURLConnection urlConnection =
(HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.connect();
// gets the server json data
BufferedReader bufferedReader =
new BufferedReader(new InputStreamReader(
urlConnection.getInputStream()));
String next;
//While loop to go through the query until reached the end
while ((next = bufferedReader.readLine()) != null){
JSONArray ja = new JSONArray(next);
for (int i = 0; i < ja.length(); i++) {
String var = "";
String var_intro = "";
JSONObject jo = (JSONObject) ja.get(i);
var = jo.getString("title");
var_intro = jo.getString("introtext");
items_intro.add(var_intro);
items.add(var);
}
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rv.item = var;
rv.item_intro = var_intro;
returnValues.add(rv);
}
return returnValues;
}
汤姆一些修改后,现在该代码的主要部分看起来是这样的。
但我仍然有一些错误
令牌“而”删除语法错误此令牌
items_intro不能得到解决
项目不能得到解决
不知道怎么修复此...
亲切的问候, 帕特里克
首先,你只能返回一个对象。如果你想返回两个阵列,你必须用它们两个创建一个对象,但是......为什么你有两个相同的变量(items和items_intro),你为什么要返回这两个变量? – luanjot 2012-08-06 19:21:41
@luanjot我怀疑在内部循环中有一个输入错误,他打算执行'items_intro.add(var_intro2)'。所以这两个ArrayLists会有所不同。 – Izkata 2012-08-06 19:23:42