Отправить httpdata при нажатии кнопки? - PullRequest
0 голосов
/ 12 марта 2012

Как поместить «try» в onclicklistener, чтобы при нажатии кнопки он отправлял данные? Однако я делаю это, он всегда вылетает при запуске.

 @Override
 public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);

     name = (EditText) findViewById(R.id.name);
     pass = (EditText) findViewById(R.id.password);

     b1 = (Button) findViewById(R.id.btn);



         HttpClient httpclient = new DefaultHttpClient();
         HttpPost httppost = new HttpPost("http://www2.park.se/~ts5124/receive.php");
         try {
             JSONObject json = new JSONObject();

             json.put("name","Tim");
             json.put("password", "hje");

             StringEntity se;
             se = new StringEntity(json.toString());

             // Add your data
             httppost.setEntity(se);
             httppost.setHeader("Accept", "application/json");
             httppost.setHeader("Content-type", "application/json");


             Log.i(TAG, json.toString());

             // Execute HTTP Post Request
             httpclient.execute(httppost);

         } catch (JSONException je) {


         } catch (IOException e) {
             // TODO Auto-generated catch block
         }

 }

Я уже делал кнопки раньше, и это сработало. Почему возникает проблема, когда в onClick происходит попытка?

1 Ответ

2 голосов
/ 12 марта 2012

вам нужно добавить прослушиватель кликов на вашей кнопке, а затем поместить все HTTP-запросы в метод onClick:

b1.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

    }
});
...