Android中使用JSON的AutoCompleteTextView
我试图将Android中使用JSON的AutoCompleteTextView,android,json,autocompletetextview,Android,Json,Autocompletetextview,我试图将JSON数组提取到一个AutoCompleteTextView中,但是我在下拉列表中得到每个值两次 JSON: Ajax类: class Ajax5 extends AsyncTask<String, String, String> {// JSON STARTS HERE // new CreateNewProduct().execute(); protected ArrayList<NameValuePair> parameters;
JSON
数组提取到一个AutoCompleteTextView
中,但是我在下拉列表中得到每个值两次
JSON:
Ajax类:
class Ajax5 extends AsyncTask<String, String, String> {// JSON STARTS HERE
// new CreateNewProduct().execute();
protected ArrayList<NameValuePair> parameters;
JSONObject json;
public Ajax5() {
super();
parameters = new ArrayList<NameValuePair>();
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
protected String doInBackground(String... args) {
JSONParser jParser = new JSONParser();
json = jParser
.makeHttpRequest(
"http:link.php",
"GET", this.parameters);
try {
Log.d("Create Response", "four"
+ json.getJSONObject("1").toString());
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(String file_url) {
try{
JSONArray jArray=json.getJSONArray("names");
pickname = new ArrayList<TreeMap<String, String>>();
//TreeMap<String, TreeMap<String, String>> tempMap = new TreeMap<String, TreeMap<String, String>>();
for(int i=0;i<jArray.length();i++){
TreeMap<String,String> valuePairs=new TreeMap<String,String>();
JSONObject tempObj=jArray.getJSONObject(i);
valuePairs.put("key", tempObj.getString("names"));
valuePairs.put("value", tempObj.getString("names"));
pickpinn.add(valuePairs);
}
}
catch (JSONException e) {
e.printStackTrace();
}
Log.d("name", pickpinn.toString());
//routes.addAll(vehicles.values());
SimpleAdapter sp5_adapter = new SimpleAdapter(OnlineBooking.this, pickpinn,
R.layout.runner, new String[] { "key", "value" },
new int[] { R.id.name_id, R.id.name_value });
// sp1_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
actv1.setAdapter(sp5_adapter);
actv1.addTextChangedListener(OnlineBooking.this);
actv1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View v, int arg2,
long arg3) {
TextView stv = (TextView) v.findViewById(R.id.name_id);
String route_id_string = stv.getText().toString();
edsp5.setText(route_id_string);
actv1.setText(((TextView) v.findViewById(R.id.name_value))
.getText().toString());
}
});
}
}
Ajax5类扩展了异步任务{//JSON从这里开始
//新建CreateNewProduct().execute();
受保护的ArrayList参数;
JSONObject json;
公共Ajax5(){
超级();
参数=新的ArrayList();
}
@凌驾
受保护的void onPreExecute(){
super.onPreExecute();
}
受保护的字符串doInBackground(字符串…args){
JSONParser jParser=新的JSONParser();
json=jParser
.makeHttpRequest(
“http:link.php”,
“获取”,这是参数);
试一试{
Log.d(“创建响应”,“四”
+json.getJSONObject(“1”).toString();
}捕获(JSONException e){
e、 printStackTrace();
}
返回null;
}
受保护的void onPostExecute(字符串文件\u url){
试一试{
JSONArray jArray=json.getJSONArray(“名称”);
pickname=newarraylist();
//TreeMap tempMap=newtreemap();
对于(int i=0;i您需要将其从
JSONArray jArray=json.getJSONArray("names");
pickname = new ArrayList<TreeMap<String, String>>();
//TreeMap<String, TreeMap<String, String>> tempMap = new TreeMap<String, TreeMap<String, String>>();
for(int i=0;i<jArray.length();i++){
TreeMap<String,String> valuePairs=new TreeMap<String,String>();
JSONObject tempObj=jArray.getJSONObject(i);
valuePairs.put("key", tempObj.getString("names"));
valuePairs.put("value", tempObj.getString("names"));
pickpinn.add(valuePairs);
}
到
@我们会来的。很高兴帮助你!!
JSONArray jArray=json.getJSONArray("names");
pickname = new ArrayList<TreeMap<String, String>>();
//TreeMap<String, TreeMap<String, String>> tempMap = new TreeMap<String, TreeMap<String, String>>();
for(int i=0;i<jArray.length();i++){
TreeMap<String,String> valuePairs=new TreeMap<String,String>();
JSONObject tempObj=jArray.getJSONObject(i);
valuePairs.put("key", tempObj.getString("names"));
valuePairs.put("value", tempObj.getString("names"));
pickpinn.add(valuePairs);
}
JSONArray jArray=json.getJSONArray("names");
pickname = new ArrayList<TreeMap<String, String>>();
//TreeMap<String, TreeMap<String, String>> tempMap = new TreeMap<String, TreeMap<String, String>>();
for(int i=0;i<jArray.length();i++){
TreeMap<String,String> valuePairs=new TreeMap<String,String>();
JSONObject tempObj=jArray.getJSONObject(i);
valuePairs.put("id", tempObj.getString("id"));
valuePairs.put("names", tempObj.getString("names"));
pickpinn.add(valuePairs);
}
SimpleAdapter sp5_adapter = new SimpleAdapter(OnlineBooking.this, pickpinn,
R.layout.runner, new String[] { "key", "value" },
new int[] { R.id.name_id, R.id.name_value });
SimpleAdapter sp5_adapter = new SimpleAdapter(OnlineBooking.this, pickpinn,
R.layout.runner, new String[] { "id", "names" },
new int[] { R.id.name_id, R.id.name_value });