2011-12-04 147 views
0

我有一個圖像..它由兩個按鈕組成。我不想使用默認的按鈕控制,而是想對圖像的按鈕執行操作。Android屏幕上點擊

有沒有什麼辦法來對圖像的按鈕的onclick執行..

回答

0

您應該使用Button控件。

<Button 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:background="@drawable/button" /> 

,如果你需要不同的圖像用於按下/盤旋,你可以創建一個自定義繪製對象是這樣的:如果你不喜歡默認的樣子,你可以用屬性按鈕指定自定義圖像

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" 
      android:drawable="@drawable/button_pressed" /> <!-- pressed --> 
    <item android:state_focused="true" 
      android:drawable="@drawable/button_focused" /> <!-- focused --> 
    <item android:state_hovered="true" 
      android:drawable="@drawable/button_focused" /> <!-- hovered --> 
    <item android:drawable="@drawable/button_normal" /> <!-- default --> 
</selector> 
0

您可以使用ImageButton

ImageButton yourButton; // Declare as class member 

的onCreate代碼:

yourButton = (ImageButton)findViewById(R.id.yourbutton); 


yourButton.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) 
    // your code 
    } 
}); 

XML代碼是:

<ImageButton 
    android:background="@drawable/img_btn_bg" 
    android:src="@drawable/img_to_show"></ImageButton> 
0

我覺得你有分裂的影像,然後u可以使用havexz的代碼在每兩個圖像。林不知道,但我不認爲你可以給一個圖像的區域,這將對點擊作出反應。

0

調查GestureDetector班。你應該重寫ImageViewonTouchEvent(MotionEvent event)調用GestureDetectoronTouchEvent(event)和實現自己的OnSingleTapConfirmed(MotionEvent event)所附聽者獲得使用event.getX()event.getY()方法來確定點擊的座標水龍頭的座標。

此外,您應該重寫聆聽者的onDown(MotionEvent event)方法以返回true。也許不是最優雅的解決方案,但它會完成這項工作。