2012-04-24 47 views
0

我试着用调用微调器来编辑edittext。所有的作品,但onItemSelected不在调入者调用带微调控制器的EditText

final String[] items = new String[] {"Item1", "Item2", "Item3"}; 
     final Spinner spinner = new Spinner(this); 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
        android.R.layout.simple_spinner_item, items); 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner.setAdapter(adapter); 

     spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() 
     { 


      @Override 
      public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void onNothingSelected(AdapterView<?> arg0) { 
       // TODO Auto-generated method stub 

      } 

     }); 


     city.setOnFocusChangeListener(new OnFocusChangeListener(){ 
      public void onFocusChange(View v, boolean hasFocus) 
      { 
       if (hasFocus) 
       { 
        InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
        mgr.hideSoftInputFromWindow(city.getWindowToken(), 0); 
        spinner.performClick(); 
       } 

      } 
     }); 

调用微调器并选择项目后没有任何事情发生。没有呼叫Spinner听众。有任何想法吗?

回答

0
final String[] items = new String[] {"Item1", "Item2", "Item3"}; 
     final Spinner spinner = new Spinner(getApplicationContext()); 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), 
        android.R.layout.simple_spinner_item, items); 

     spinner.setAdapter(adapter); 

    spinner.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
      public void onItemClick(AdapterView<?>arg0,View v, int i, long lng) { 

           //what you want 

          } 
         }); 
+0

04-24 15:19:32.897:E/AndroidRuntime(7769):引起:java.lang.RuntimeException:setOnItemClickListener不能与微调器一起使用。 – user1021984 2012-04-24 11:21:16

+0

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);删除此行并尝试使用setOnItemClickListener – 2012-04-24 11:25:18

+0

再次出现此错误 – user1021984 2012-04-24 11:32:53