我正在尝试循环访问JSONObject以查看有多少乘客,然后我想在对话窗口中很好地显示它们。看起来有几种方法可以做到这一点,但总的来说我只是对如何去做它感到困惑。这是我得到的最接近的,它可以工作,但你可以看到我只添加一个项目。所以我的alertdialog中只显示了一个项目,应该还有一个项目。我的alertdialog(称为ticketbuilder)是在其他地方创建的,我只是想在这个for循环中添加所有东西。如何将所有乘客添加到列表中以显示?非常感谢提前!
for (int i = 0; i < tickets.length(); i++) {
final int ticketCount = i;
JSONObject ticket;
try {
ticket = tickets.getJSONObject(ticketCount);
passengername = ticket.getString("passengername");
ticketnumber = ticket.getString("ticketnumber");
CharSequence[] array = {passengername + " \n" + ticketnumber};
ticketBuilder.setItems(array, null); //adding to my dialog
} catch (JSONException e) {
System.out.println(e);
// TODO Auto-generated catch block
e.printStackTrace();
}
}
答案 0 :(得分:1)
尝试将CharSequence放在循环之外并按照以下方式初始化:
CharSequence[] array = new CharSequence[tickets.length()];
然后在循环中向数组添加东西:
array[i] = {passengername + " \n" + ticketnumber};
移动ticketBuilder.setItems,使其在循环之外。