2014-10-29 3 views
1

Im, используя spinner, и мне было интересно, как вы можете получить item из spinner, чтобы появиться в image button изображения используются строкой в ​​качестве значения.change imagebutton from spinner

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_up); 
    spinnerListener(); 
    St = (Spinner) findViewById(R.id.Namess); 
    imageButton01 = (ImageButton) findViewById(R.id.ImageButton1); 
} 


    private void spinnerListener() { 

     ArrayList<Name> players = List_content.ENTRY_LIST_PLAYERS; 
      final ArrayAdapter<String> adapter=new ArrayAdapter<String>(Line_up.this, android.R.layout.simple_spinner_item); 
      {for (Name p : players){adapter.add(p.f_name);}}; 
      playerss.setAdapter(adapter); 
      playerss.setOnItemSelectedListener(new OnItemSelectedListener() { 
       public void onItemSelected(AdapterView<?> av, View v, 
          int position, long itemId) { 

      } 

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

     } 

    }); 
    } 
      public void goalkeeper(View v){ 
       st.performClick(); 

    } 
+0

Вы должны сделать свой вопрос более ясным. Дайте мне пример. Вы можете изменить изображение ImageButton с помощью метода setDrawableResourceId(). – Behnam

+0

хорошо, когда я нажимаю на изображение. Я хочу, чтобы spinner открывался, и когда я выбираю элемент из прядильника, я хочу, чтобы кнопка изображения меня нажимала, чтобы изменить изображение на изображение. Я выбираю в прядильщике. – Kalle

+0

OK. Я расскажу вам, что делать. – Behnam

ответ

0

ОК. Вот трюк:

При нажатии кнопки ImageButton вам нужно просто позвонить performClick() на объект spinner.

int[] pictureIds = { 
     R.drawable.picture1, 
//add as many picture IDs as you want 
     R.drawable.picture2 
} 

imageButton.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     spinner.performClick(); 

    } 
}); 

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 

    @Override 
    public void onItemSelected(AdapterView<?> arg0, View arg1, 
      int position, long arg3) { 
      imageButton.setImageResource(pictureIds[position]);    
    } 

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

    } 
}); 

Не забудьте установить адаптер прядильного устройства так же, как и в своем вопросе.