2016-09-08 1 views
0

J'essaie de recréer des fonctionnalités, lorsque l'une des suggestions dans un AppCompatAutoCompleteTextView est cliqué, je veux vérifier si une variable est définie à une valeur spécifique, si c'est le cas, ignorer ce clic et ne pas remplir la zone de texte, sinon le clic est bien et la zone de texte est remplie ok. Excuses c'est un nouveau widget pour moi donc j'apprends toujours les méthodes pour le moment et ça ne semble pas évident.Lorsque j'utilise un AutoCompleteTextView, puis-je exécuter du code entre un utilisateur qui clique et qui remplit la zone de texte avec la réponse?

Merci,

Répondre

0

Vous pouvez le faire en liant le AutoCompleteTextView setOnItemClickListenerlistner

public class MainActivity extends AppCompatActivity { 

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

     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_dropdown_item_1line, COUNTRIES); 
     AutoCompleteTextView textView = (AutoCompleteTextView) 
      findViewById(R.id.countries_list); 
     textView.setAdapter(adapter); 



     textView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
       // Check here if selected text is valid 
       // otherwise remove the text from textview 
      } 
     }); 

    } 

    private static final String[] COUNTRIES = new String[] { 
     "Belgium", "France", "Italy", "Germany", "Spain" 
    }; 
} 
+0

Merci, ce fait l'affaire. – Jamie