【发布时间】:2016-01-08 04:21:04
【问题描述】:
朋友们!!我有两个 Spinner,数据来自 JSON。我能够解析数据并显示到 Spinner 中。在第一个 Spinner 中,有多个节点,其细节数为 s。所以我的要求是根据第一个微调器的选择填充第二个微调器..请帮助我
@Override
protected JSONObject doInBackground(String... args) {
JSONParser jParser = new JSONParser();
// Getting JSON from URL
JSONObject json = jParser.getJSONFromUrl(url);
return json;
}
@Override
protected void onPostExecute(JSONObject json) {
pDialog.dismiss();
try {
// Getting JSON Array from URL
android = json.getJSONArray(TAG_OS);
for(int i = 0; i < android.length(); i++){
JSONObject c = android.getJSONObject(i);
c = c.getJSONObject("LearningStandards");
// Storing JSON item in a Variable
String ver = c.getString(TAG_VER);
/*String name = c.getString(TAG_NAME);
String api = c.getString(TAG_API);*/
// Adding value HashMap key => value
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_VER, ver);
/*map.put(TAG_NAME, name);
map.put(TAG_API, api);*/
oslist.add(map);
list=(ListView)findViewById(R.id.list);
ListAdapter adapter = new SimpleAdapter(MainActivity.this, oslist,
R.layout.list_v,
new String[] { TAG_VER,TAG_NAME, TAG_API }, new int[] {
R.id.vers,R.id.name, R.id.api});
list.setAdapter(adapter);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this, "You Clicked at "+oslist.get(+position).get("ref_id"), Toast.LENGTH_SHORT).show();
}
});
}
} catch (JSONException e) {
e.printStackTrace();
}
【问题讨论】:
-
Spinner相关代码在哪里?
-
您好,谢谢您的快速响应。实际上,首先我填充到列表中,但现在我想将所有数据显示到微调器中。我能够将数据输入微调器。但我想让它可靠。如果选择了第一个节点,则与该节点相关的所有数据都必须填充到第二个微调器中。请先生帮帮我..
-
显示在 Spinner 中填充数据的代码
-
使用spinner的setSelection方法,传递依赖值的位置。请按照@ρяσѕρєяK 的建议提供微调器代码。
-
@ρяσѕρєяK ..如果您有任何想法,请告诉我..我不精通 JSON 和解析,所以我现在正在学习。通过查看示例,我可以编写代码。但是在这个微调器中,主节点必须首先填充,然后当用户根据第二个微调器选择它们时必须填充......请帮助我。我可以给你 JSON 链接
标签: android json android-spinner android-json