2014-09-22 32 views
5

arasından seçilen öğenin karşılık gelen verileriyle birlikte gizli alanın değerini ayarladım, onTextChanged kullanarak, metin değiştiğinde bir api çağırarak MySQL veritabanında depolanan yerin adını öneren bir AutoCompleteTextView kullanıyorum. Yanıt, place_name, id, location_key, query_type, request_type, vb. Gibi birçok öğeyle (her biri kendi farklı amacı ile) JSON dizisidir. 3 EditText alanını gizledim. setOnItemClickListener'da, kullanıcı bir yer adı seçtiğinde, bu 3 gizli alanın değerlerinin otomatik olarak konum_anahtarı, sorgu_tipi ve request_type ile ayarlanmasını istiyorum, çünkü bu 3 değeri, api'den istenen sonucu almak için yer adıyla birlikte göndermem gerekir.AutoCompleteTextView

+1

yardımcı Ve sorun nedir? Ne denedin ve neyin yanlış gittiğini? –

+0

Denediğiniz bazı kodları gönderin, böylece geliştirebiliriz. –

+0

Bu bilgiyi Neden Faaliyet Alanınız/Fragmanınızın yalnızca sınıf üyesi değişkenleri yerine gizli alanlarda saklıyorsunuz? – Siebe

cevap

-1

Bu alanların görünürlüğünü gitti olarak ayarlayın. Eğer yer_adı alanına tıkladığınızda onları görünür kullanımını

txtPromo.setVisibility(View.VISIBLE); 
+0

EditText alanının nasıl gizlendiğini sormuyorum, kullanıcı otomatik tamamlama görünümünden bir öğe seçtiğinde, bu gizli alanların seçili öğeye karşılık gelen diğer verilerle nasıl doldurulacağını soruyorum. – carefree

+1

Sorunun konusu bu değil. EditTexts zaten gizlenmişti. –

0

yapmak istediğinizde

txtview.setVisibility(View.GONE); 

ve gizli EditTexts veritabanına göndermek gereken değerleri almalısınız. Bu kolayca aşağıdakileri yaparak elde edilebilir: Alternatif

textMessage.addTextChangedListener(new TextWatcher(){ 
    public void afterTextChanged(Editable s) { 
     if (textMessage == "//Name of place") { 
      editText1.setText "//whatever you need"; 
      editText2.setText "//whatever you need"; 
      editText3.setText "//whatever you need"; 
     } 
    } 
}); 

, ben yer adı için bir değer değiştirici kullanmak ve buna benzer bir şeyle kodlayacağınıza:

@Override public void onClick (Görünüm arg0) {

int range = spnDonate.getSelectedItemPosition(); 

    Donator_Name = tboxName.getText().toString(); 
    switch(range) { 
     case 0: 
      editText1.setText = "//whatever you need"; 
      editText2.setText = "//whatever you need"; 
      editText3.setText = "//whatever you need"; 
      break; 
     case 1: 
      editText1.setText = "//whatever you need"; 
      editText2.setText = "//whatever you need"; 
      editText3.setText = "//whatever you need"; 
      break; 
     case 2: 
      editText1.setText = "//whatever you need"; 
      editText2.setText = "//whatever you need"; 
      editText3.setText = "//whatever you need"; 
      break; 
    } 
} 

Umut bu :)

+0

Bu cevap size yardımcı oldu mu? –

+0

Nope, Özel AutoCompleteTextView kullanarak bitti ve – carefree

+0

@carefree buna göre ayarlanmış değer nasıl yaptığını gösterebilir misin? soruyu kendin cevapla plz :) – Abhigyan