Android - AutoCompleteTextView onClickListener works after second click -


i have 4 autocompletetextviews (actv) , they're working fine. created onclicklistener() them know when user selects/presses of 4 @ point in time. however, upon close inspection, noticed had click actv twice before triggered.

here code:

in oncreate(), initialize actv , set onclicklistener():

brandactv = (autocompletetextview) findviewbyid(r.id.actvbrand); itemactv = (autocompletetextview) findviewbyid(r.id.actvitemname); partactv = (autocompletetextview) findviewbyid(r.id.actvpart); barcodeactv = (autocompletetextview) findviewbyid(r.id.actvbarcode);  brandactv.setonclicklistener(actvclicked); itemactv.setonclicklistener(actvclicked); partactv.setonclicklistener(actvclicked); barcodeactv.setonclicklistener(actvclicked); 

and onclicklistener() defined so:

onclicklistener actvclicked = new onclicklistener(){      @override     public void onclick(view view){          log.d("hi", "onclickactivated");          switch (view.getid()) {             case r.id.actvbrand:                 log.d("hi", "brand pressed");                 break;              case r.id.actvitemname:                 log.d("hi", "item name pressed");                 break;              case r.id.actvpart:                 log.d("hi", "part pressed");                 break;              case r.id.actvbarcode:                 log.d("hi", "barcode pressed");                 break;         }     } }; 

however, initial click detected properly. subsequent clicks register once user clicks same actv twice.

any ideas on how fix this? thank you.

used onfocuschangedlistener instead. so:

    brandactv.setonfocuschangelistener(focuschanged);     itemactv.setonfocuschangelistener(focuschanged);     partactv.setonfocuschangelistener(focuschanged);     barcodeactv.setonfocuschangelistener(focuschanged); 

and listener defined such:

onfocuschangelistener focuschanged = new onfocuschangelistener() {      @override     public void onfocuschange(view v, boolean hasfocus) {          log.d("hi", "id " + v.getid() + ". focus " + hasfocus);          // todo auto-generated method stub         switch( v.getid() ){             case r.id.actvbrand:                 log.d("hi", "brand focus + " + hasfocus);                 break;              case r.id.actvitemname:                 log.d("hi", "itemname focus + " + hasfocus);                 break;              case r.id.actvpart:                 log.d("hi", "part focus + " + hasfocus);                 break;              case r.id.actvbarcode:                 log.d("hi", "barcode focus + " + hasfocus);                 break;          }     } }; 

Comments

Popular posts from this blog

java - Intellij Synchronizing output directories .. -

git - Initial Commit: "fatal: could not create leading directories of ..." -