2013-05-15 68 views
2

我是新來的機器人,並試圖找出如何我可以點擊不同的圖像。 我有2個圖像,一個用於正常狀態,一個用於onclick狀態。我無法設置onclick狀態圖像。如何在點擊時更改圖像按鈕

下面的代碼:

<ImageButton 
    android:id="@+id/button_information" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:onClick="@drawable/em_info_active" 
    android:background="@drawable/em_info_active" 
    android:src="@drawable/em_info" /> 

<ImageButton 
    android:id="@+id/button_settings" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_toLeftOf="@+id/button_information" 
    android:background="@drawable/em_prefs_active" 
    android:src="@drawable/em_prefs" /> 

和相應的Java代碼:

public void onClick(final View v) { 
    switch (v.getId()) { 

     case R.id.button_information: 
      leaveMainActivity(); 
      InformationActivity.newInstance(getActivity()); 
      break; 
     case R.id.button_settings: 
      leaveMainActivity(); 
      PreferencesActivity.newInstance(getActivity()); 
      break; 
    } 
} 

任何線索我怎麼能去差不多嗎? 謝謝! 賈斯汀

+0

使用選擇器作爲背景,您將定義drawable爲state_pressed –

回答

3

創建您繪製作爲imagebtn.xml一個XML文件,並粘貼此代碼

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_focused="true" android:drawable="@drawable/your_imagename_while_focused"/> 
<item android:state_pressed="true" android:drawable="@drawable/your_imagename_while_pressed" /> 
<item android:drawable="@drawable/image_name_while_notpressed" /> 
</selector> 

,並嘗試這在你的活動

button_information.setBackgroundResource(R.drawable.imagebtn); 

背景圖像的變化在聚焦和壓制。讓我知道這個是否奏效。

+0

我必須創建一個imagebtn類與選擇器每一次我需要創建一個不同的按鈕圖像或我可以縮進與item1,2等,並調用在activity class?\ –

+0

你可以在圖像按鈕上將src設置爲這個文件 –

相關問題