这可能是我遇到的一个简单的Java问题,但我希望社区能在这里帮助我,因为我在这种情况下遇到了瓶颈。
我成功地从MySQL数据库中获取数据,并通过JSON传递到应用程序中。在解析期间,我尝试创建另一个数组,以便传递给ArrayAdapter,以在ListView中使用。以下是我遇到问题的代码:
我成功地从MySQL数据库中获取数据,并通过JSON传递到应用程序中。在解析期间,我尝试创建另一个数组,以便传递给ArrayAdapter,以在ListView中使用。以下是我遇到问题的代码:
try{
jArray = new JSONArray(result);
JSONObject json_data=null;
for(int i=0;i<jArray.length();i++){
json_data = jArray.getJSONObject(i);
ct_id=json_data.getString("ID");
ct_name=json_data.getString("Player2N");
Games game_data[] = new Games[]
{
new Games(ct_id, ct_name)
};
}
GameAdapter adapter = new GameAdapter(this, R.layout.listview_item_row, game_data);
listView1 = (ListView)findViewById(R.id.listView1);
View header = (View)getLayoutInflater().inflate(R.layout.listview_header_row, null);
listView1.addHeaderView(header);
listView1.setAdapter(adapter);
}
这行代码:GameAdapter adapter = new GameAdapter(this, R.layout.listview_item_row, game_data);
更具体地说,game_data 在 Eclipse 中被标为红色。 我想知道的是为什么循环结束后 game_data 就无法访问了? 我只是试图将 JSON 中的特定字段添加到适配器中的行中。
我还尝试通过设置数组来遍历循环,但是新的 Games[] 会出错。 这是一个例子:
Games game_data[] = new Games[]
{
for(int i=0;i<jArray.length();i++){
json_data = jArray.getJSONObject(i);
ct_id=json_data.getString("ID");
ct_name=json_data.getString("Player2N");
// Games game_data[] = new Games[]
// {
new Games(ct_id, ct_name);
// };
}
错误:变量必须提供维度表达式或数组初始化程序。