Java,根据选定的州获取城市
我在Android应用程序中有两个旋转框。第一个微调器框是美国不同州的字符串数组。我希望第二个微调器填充选定州内的城市 我怎样才能得到这些城市的名单?我可以使用一些API吗?我是否需要包含此数据的预定义CSV文件,以便将其导入SQLite数据库 编辑: 接下来,我将继续将我想做的事情融入其中。我将JSON从端点推送到字符串中,然后最终推送到JSONArray:Java,根据选定的州获取城市,java,android,maps,Java,Android,Maps,我在Android应用程序中有两个旋转框。第一个微调器框是美国不同州的字符串数组。我希望第二个微调器填充选定州内的城市 我怎样才能得到这些城市的名单?我可以使用一些API吗?我是否需要包含此数据的预定义CSV文件,以便将其导入SQLite数据库 编辑: 接下来,我将继续将我想做的事情融入其中。我将JSON从端点推送到字符串中,然后最终推送到JSONArray: inStream = httpConnection.getInputStream();
inStream = httpConnection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inStream));
StringBuilder sb = new StringBuilder();
String line;
//sb.append("{\"cities\":");
while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
br.close();
jsonArray = new JSONArray(sb.toString());
//sb.append("}");
jsonArray = new JSONArray(sb.toString());
从那里,我循环遍历数组,并将每个城市的“名称”放入一个ArrayList中:
ArrayList<String> cities = new ArrayList<>();
try {
int rootSize = jsonArray.length();
for (int i = 0; i < rootSize; i++){
JSONObject inner = jsonArray.getJSONObject(i);
//String firstChildren = inner.getString("name");
cities.add(inner.getString("name"));
//double secondChildren = inner.getDouble(1);
}
} catch (JSONException e) {
e.printStackTrace();
}
Collections.sort(cities);
return cities;
ArrayList cities=new ArrayList();
试一试{
int rootSize=jsonArray.length();
for(int i=0;i
拿着ArrayList,我使用列表适配器并将其绑定到我的cities微调器。完成了!:
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, cities);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
spnrCity.setAdapter(spinnerArrayAdapter);
ArrayAdapter spinnerayadapter=新的ArrayAdapter(上下文,android.R.layout.simple\u微调器项目,城市);
spinnerrayadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//下拉视图
设置适配器(spinnerrayadapter);
我建议使用SBA.gov API。这里是链接
具体来说,您可能需要使用该端点
继续并单击上面的链接,您将能够看到返回的数据。它会在TX中返回所有城市。你认为城市是什么?在你不想展示一个城市之前,它需要有多小?对于大城市,你是想把大城市区显示为一个城市,还是想把郊区/远郊区分开列出?尽管如此,API可能会满足你的需要。伙计,这正是我所需要的!非常感谢你!没问题,如果您在解析JSON或打电话时遇到任何问题,请立即询问stackoverflow并标记我!SBA API参考页已更改,现在API调用本身仍然有效。此链接也不起作用。我们需要任何可靠的地方,从那里我可以得到州和镇以及他们的关系。