2014-10-29 54 views
1

即時通訊使用spinner我想知道你怎麼能從spinneritem出現在image button圖像使用字符串作爲價值。更改從微調imagebutton

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

你應該讓你的問題更加清楚。也許給我一個例子。 您通常可以使用setDrawableResourceId()方法更改ImageButton圖像。 – Behnam 2014-10-29 12:00:54

+0

好,當我點擊一個imageButton我想要微調打開,當我從微調選項中選擇一個項目我想要圖像按鈕我按它來改變它的圖像我在微調選擇的圖像 – Kalle 2014-10-29 12:11:52

+0

好吧,我會告訴你什麼做。 – Behnam 2014-10-29 12:26:12

回答

0

好的。這裏的技巧:

當單擊ImageButton時,您只需要在spinner對象上調用performClick()

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 

    } 
}); 

不要忘記設置微調控制器適配器,就像你在問題中做得正確一樣。