如何发送autocompletetextview的id?

时间:2015-03-24 04:17:46

标签: android json autocompletetextview

在我的应用程序中,我使用autocompletetextview来检索数据,我显示的数据是使用json,现在autocompletetextview运行良好,但我想要的是在我的autocompletetextview中获取名称之后我想发送类别的id,但它发送名称..下面是我的回复..我的代码段就在这里.. Autocompletetextview not working

{
 "category":
  [
   {
      "id":"4",
      "name":"cat1"
   },
   {
      "id":"7",
    "name":"aditya"}
   ]
}

Add_Catagory.java

public class MainActivity extends Activity {

private Button btns;

private ProgressDialog pDialog;
JSONParser jsonParser = new JSONParser();

private  MultiAutoCompleteTextView acTextView;
private static final String FEEDBACK_URL = "";
private static final String FEEDBACK_SUCCESS = "status";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    acTextView = (MultiAutoCompleteTextView) findViewById(R.id.autoComplete);
    acTextView.setAdapter(new SuggestionAdapter(this,acTextView.getText().toString()));
    acTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

   /* JsonParse jp=new JsonParse();
    List<SuggestGetSet> list =jp.getParseJsonWCF(acTextView.getText().toString());
    list.get(0).getId();*/



    btns=(Button)findViewById(R.id.btn);
    btns.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            new AttemptLogin().execute();
        }
    });
}

     class AttemptLogin extends AsyncTask<String, String, String> {

    boolean failure = false;
    private String catid;

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        pDialog = new ProgressDialog(MainActivity.this);
        pDialog.setMessage("Sending..");
        pDialog.setIndeterminate(true);
      //  pDialog.setIndeterminateDrawable(getResources().getDrawable(R.drawable.custom_progress));
        pDialog.setCancelable(true);
        pDialog.show();
    }

    @SuppressWarnings("unused")
    @Override
    protected String doInBackground(String...args) {
        //Check for success tag
        //int success;
        Looper.prepare();

        String pweighttype=acTextView.getText().toString();


        try {
              JsonParse jp=new JsonParse();
              List<NameValuePair> params = new ArrayList<NameValuePair>();
              List<SuggestGetSet> list =jp.getParseJsonWCF(acTextView.getText().toString());
              for(int i = 0;i<list.size();i++){
                if(list.get(i).getName().equals(acTextView.getText().toString()))
                 params.add(new BasicNameValuePair("parentid",list.get(i).getId()));
                System.out.println("Su gayu server ma"+params);
                catid=list.get(i).getId().toString();
              }


              System.out.println("Su catid"+catid);

             Log.d("request!", "starting");
             // getting product details by making HTTP request
             JSONObject json = jsonParser.makeHttpRequest (
                 FEEDBACK_URL, "POST", params);
             //check your log for json response
             Log.d("Login attempt", json.toString());

             JSONObject jobj = new JSONObject(json.toString());
             final String msg = jobj.getString("msg");

            runOnUiThread(new  Runnable() 
             {
                @Override
                public void run() 
                {
                    Toast.makeText(MainActivity.this, msg, Toast.LENGTH_LONG).show();
                } 
            });
             return json.getString(FEEDBACK_SUCCESS);

         }catch (JSONException e) {
             e.printStackTrace();
         }
         return null;
    }

    // After completing background task Dismiss the progress dialog

    protected void onPostExecute(String file_url) {
        //dismiss the dialog once product deleted
        pDialog.dismiss();

        //parentcat.getText().clear();
}}

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

试试这个//修改doInBackground

   try {
      JsonParse jp=new JsonParse();
      List<NameValuePair> params = new ArrayList<NameValuePair>();
      List<SuggestGetSet> list =jp.getParseJsonWCF(acTextView.getText().toString());
      for(int i = 0;i<list.length();i++){
        if(list.get(i).getName().equals(acTextView.getText().toString()))
         params.add(new BasicNameValuePair("parentid",list.get(i).getId()));
           break;
      }
相关问题