2016-04-05 13 views
0

Bir edittext alıyorum ve sunucudan alınan yanıttan otomatik tamamlama bir metin görünümünü doldurmak istiyorum, ancak kullanıcı 3 veya 4 karakter girdiyse isteğin nasıl gönderileceğini göremiyorum. 3 karakter girildi. isteği yapmak ve yanıtı otomatik tamamlama olarak göstermek için. Sonra öneriye tıklar ve ardından doğru sonuç gösterilir.Kullanıcı edittext'te metin girerken voleyboldan bir posta isteği nasıl gönderilir?

 public void afterTextChanged(Editable s) { 
      // TODO Auto-generated method stub 
      String searchText = e1.getText().toString().trim(); 
      if (searchText.length()>3){ 

       request = new StringRequest(Request.Method.GET, suggesturl + e1.getText().toString(), new Response.Listener<String>() { 
        public void onResponse(String response) { 
         Toast.makeText(MainActivity.this,"Hii",Toast.LENGTH_SHORT).show(); 

         try { 

          JSONArray array1 = new JSONArray(response); 

          for (int i = 0; i < array1.length(); i++) { 
           JSONObject obj1 = array1.getJSONObject(i); 
           id = obj1.getString("Title"); 
           t1.setText(id); 
           //getdetails(id); 

          } 


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


        } 
       }, new Response.ErrorListener() { 
        public void onErrorResponse(VolleyError error) { 
         //Citydetails.error(); 


        } 


       }) { 
        @Override 
        protected Map<String, String> getParams() throws AuthFailureError { 
         HashMap<String, String> hashMap = new HashMap<String, String>(); 
         hashMap.put("cityName", city); 
         return hashMap; 
        } 
       }; 
       requestQueue.add(request); 
      } 

cevap

0

Kullanım TextWatcher - Ben GET isteği gönderiliyor olmadığını düşünüyorum oluyor

editText.addTextChangedListener(new TextWatcher() { 
      @Override 
      public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

      } 

      @Override 
      public void onTextChanged(CharSequence s, int start, int before, int count) { 

      } 

      @Override 
      public void afterTextChanged(Editable s) { 
       //You can check the number of characters entered and make your API request 
       String searchText = editText.getText().toString().trim(); 
       if(searchText.length > 3){ //Any number you want 
        //Make request here 
       } 
      } 
     }); 
+0

şey yok. –

+0

Güncellenen kodu gönderin. –

İlgili konular