java - How to get spinner data in autocompletetext view suggession and on clicking spinner items it should redirect to next spinner in new activity -


while trying type in autocompltetextview suggestions getting error ..

process: com.example.sort.spinnercity, pid: 8693     android.view.windowmanager$badtokenexception: unable add window -- token android.view.viewrootimpl$w@2e5df6b not valid; activity running?             @ android.view.viewrootimpl.setview(viewrootimpl.java:579)             @ android.view.windowmanagerglobal.addview(windowmanagerglobal.java:313)             @ android.view.windowmanagerimpl.addview(windowmanagerimpl.java:86)             @ android.widget.popupwindow.invokepopup(popupwindow.java:1258)             @ android.widget.popupwindow.showasdropdown(popupwindow.java:1110)             @ android.widget.listpopupwindow.show(listpopupwindow.java:658)             @ android.widget.spinner$dropdownpopup.show(spinner.java:1223)             @ android.widget.spinner.performclick(spinner.java:758)             @ android.view.view$performclick.run(view.java:21177)             @ android.os.handler.handlecallback(handler.java:739)             @ android.os.handler.dispatchmessage(handler.java:95)             @ android.os.looper.loop(looper.java:148)             @ android.app.activitythread.main(activitythread.java:5438)             @ java.lang.reflect.method.invoke(native method)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:738)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:628) 

help me spinner data of cities in autocompletetext view suggession , on clicking spinner items should redirect next spinner contains area in new activity....

here code... mainactivity.java

package com.example.sort.spinnercity;  import android.app.activity;  import android.content.context; import android.os.bundle;  import android.view.motionevent; import android.view.view;  import android.view.inputmethod.inputmethodmanager; import android.widget.adapterview;  import android.widget.adapterview.onitemselectedlistener;  import android.widget.arrayadapter;  import android.widget.autocompletetextview; import android.widget.imageview; import android.widget.spinner;    public class mainactivity extends activity implements onitemselectedlistener {        spinner spinnercity;     //spinner spinnerarea;     autocompletetextview auto_search;     string city[];     imageview img_search_button;       @override      protected void oncreate(bundle savedinstancestate) {          super.oncreate(savedinstancestate);          setcontentview(r.layout.layout2);          spinnercity = (spinner) findviewbyid(r.id.spinnercity);         // spinnerarea = (spinner) findviewbyid(r.id.spinnerarea);          spinnercity.setonitemselectedlistener(this);          auto_search = (autocompletetextview) findviewbyid(r.id.auto_search);         img_search_button = (imageview) findviewbyid(r.id.img_search_button);         // autosearch adapter         city = getresources().getstringarray(r.array.city_array); //test 19 jan         int j = 0;          for(int i=0;i<city.length;i++)         {              string item = city[i];             if (item instanceof charsequence) {                 //text.settext((charsequence)item);                 j++;              } else {              }         }         string outletstemp[] = new string[j];         j=0;         for(int i=0;i<city.length;i++)         {              string item = city[i];             if (item instanceof charsequence) {                 //text.settext((charsequence)item);                 outletstemp[j] = item;                 j++;                 system.out.println(item);             } else {                 //text.settext(item.tostring());                 system.out.println(item+"test");                 //outletstemp[i] = "test";             }         }         city = new string[outletstemp.length];         city = outletstemp;            arrayadapter <charsequence> outletlist = new arrayadapter<charsequence>(this,r.layout.layout2,r.id.auto_search,city);         outletlist.setdropdownviewresource(android.r.layout.select_dialog_singlechoice);         //autocompleteadapter  outletlist = new autocompleteadapter(this,android.r.layout.simple_list_item_1,android.r.id.text1,modeldata.outletlist);         auto_search.setadapter(outletlist);         auto_search.setthreshold(1);          auto_search.setonitemclicklistener(new adapterview.onitemclicklistener() {             @override             public void onitemclick(adapterview<?> parent, view view, int position, long id) {                 inputmethodmanager inputmanager = (inputmethodmanager)getsystemservice(context.input_method_service);                  inputmanager.hidesoftinputfromwindow(getcurrentfocus().getwindowtoken(),inputmethodmanager.hide_not_always);                  string selection = (string) parent.getitematposition(position);                 int pos = -1;                  (int = 0; < city.length; i++) {                     if (city[i].equals(selection)) {                         pos = i;                         break;                     }                 }                 system.out.println("position " + pos);                /* modeldata.shopposition = pos;                 spinner_outlets.setselection(modeldata.shopposition);*/                 auto_search.setvisibility(view.gone);                 spinnercity.setvisibility(view.visible);                  /*inputmethodmanager in = (inputmethodmanager) getsystemservice(context.input_method_service);                 in.hidesoftinputfromwindow(view.getapplicationwindowtoken(), 0);*/               }         });         auto_search.setontouchlistener(new view.ontouchlistener() {             @override             public boolean ontouch(view v, motionevent event) {                   /*view view1 = auto_search.getcurrentfocus();                 if (view1 != null) {                     inputmethodmanager imm = (inputmethodmanager)getsystemservice(context.input_method_service);                     imm.hidesoftinputfromwindow(view1.getwindowtoken(), 0);                 }*/                /* inputmethodmanager in = (inputmethodmanager) getsystemservice(context.input_method_service);                 in.hidesoftinputfromwindow(v.getapplicationwindowtoken(), 0);*/                /*  view view1 = this.getcurrentfocus();                 if (view1 != null) {                     inputmethodmanager imm = (inputmethodmanager)getsystemservice(context.input_method_service);                     imm.hidesoftinputfromwindow(view1.getwindowtoken(), 0);                 }                inputmethodmanager inputmanager = (inputmethodmanager) view.getcontext().getsystemservice(context.input_method_service);                  ibinder binder = view.getwindowtoken();                 inputmanager.hidesoftinputfromwindow(binder,inputmethodmanager.hide_not_always); */                  final int drawable_left = 0;                 final int drawable_top = 1;                 final int drawable_right = 2;                 final int drawable_bottom = 3;                   if(event.getrawx() >= (auto_search.getright() - auto_search.getcompounddrawables()[drawable_right].getbounds().width())) {                     // action here                     auto_search.settext("");                     return true;                 }                  return false;             }         });         // autosearch end           img_search_button.setonclicklistener(new view.onclicklistener() {             @override             public void onclick(view v) {                 if(spinnercity.getvisibility() == view.visible)                 {                     auto_search.setvisibility(view.visible);                     spinnercity.setvisibility(view.gone);                 }                 else                 {                     auto_search.setvisibility(view.gone);                     spinnercity.setvisibility(view.visible);                 }               }         });        }        @override      public void onitemselected(adapterview<?> parent, view arg1, int pos,                                 long arg3) {          parent.getitematposition(pos);          if (pos == 0) {              arrayadapter<charsequence> adapter = arrayadapter                      .createfromresource(this, r.array.area_chennai,                              android.r.layout.simple_spinner_item);             // spinnerarea.setadapter(adapter);          } else if (pos == 1) {              arrayadapter<charsequence> adapter = arrayadapter                      .createfromresource(this, r.array.area_mumbai,                              android.r.layout.simple_spinner_item);             // spinnerarea.setadapter(adapter);          } else if (pos == 2) {              arrayadapter<charsequence> adapter = arrayadapter                      .createfromresource(this, r.array.area_calcutta,                              android.r.layout.simple_spinner_item);             // spinnerarea.setadapter(adapter);          }      }        @override      public void onnothingselected(adapterview<?> arg0) {      }  } 

layout2.xml

<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="match_parent" android:layout_height="match_parent"     android:layout_weight="2"     android:orientation="vertical">     <linearlayout         android:layout_width="match_parent"         android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal">         <spinner              android:id="@+id/spinnercity"              android:layout_width="200dp"              android:layout_height="60dp"              android:layout_weight="3"             android:layout_centerhorizontal="true"              android:layout_margintop="8dp"              android:entries="@array/city_array" />          <autocompletetextview android:id="@+id/auto_search" android:visibility="gone"             android:layout_width="10dp"             android:layout_height="60dp" android:textsize="20dp"             android:layout_weight="3"  android:drawableright="@android:drawable/ic_delete"/>         <imageview             android:id="@+id/img_search_button"             android:layout_margintop="8dp"             android:layout_width="0dp"             android:layout_height="60dp"             android:layout_weight="3"             android:src="@android:drawable/ic_search_category_default" android:padding="3dp"/>     </linearlayout>    <!-- <spinner          android:id="@+id/spinnerarea"          android:layout_width="wrap_content"          android:layout_height="wrap_content"             android:layout_margintop="20dp"          android:entries="@array/area_chennai" />-->  </linearlayout> 

string.xml

<?xml version="1.0" encoding="utf-8"?> <resources>      <string name="app_name">spinner</string>     <string name="action_settings">settings</string>     <string name="hello_world">hello world!</string>     <string name="title_activity_main">mainactivity</string>      <string-array name="city_array">         <item>chennai</item>         <item>mumbai</item>         <item>calcutta</item>     </string-array>     <string-array name="area_chennai">         <item>mumbai</item>         <item>chennai</item>         <item>kolkata</item>         <item>bangalore</item>     </string-array>     <string-array name="area_mumbai">         <item>karachi</item>         <item>lahore</item>         <item>faisalabad</item>         <item>rawalpindi</item>     </string-array>     <string-array name="area_calcutta">         <item>colombo</item>         <item>dehiwala-mount lavinia</item>         <item>moratuwa</item>         <item>kotte</item>     </string-array>      <string name="title_activity_main_activity2">mainactivity2</string>  </resources> 


Comments

Popular posts from this blog

inversion of control - Autofac named registration constructor injection -

verilog - Systemverilog dynamic casting issues -

ios - Change Storyboard View using Seague -