三角形のボタン(PNG画像)を使用していますが、画像の表示領域でのみクリック可能にする必要があります。下の三角形のボタンの画像でわかるように、画像では、画像の表示部分、つまり黒と赤でのみクリック可能にする必要があります。緑の領域は透明でクリックできません。この点を私に助けてください。私はあなたにとても感謝します。前もって感謝します。
1060 次
3 に答える
1
Androidでクリックされた画像領域を特定しますか?この質問を確認してください
または、緑が透明になる場合、画像の「表示」コンテンツがクリックされたかどうかを検出する最も簡単な方法は、OnTouchListenerを接続し、タッチ座標を取得してから、Bitmap.getPixel(int x、int y)。これによりARBGカラーが返されるため、アルファチャネルを使用した画像ではほとんど問題が発生しないはずです。「透明」(緑が透明になる場合)は無効になり、それ以外はすべて実際のコンテンツがタップされたことを意味します。
スタートアップとしてこのようなもの:
int color = Bitmap.getPixel(x,y); // x and y are the location of the touch event in Bitmap space
int alpha = Color.getAlpha(color);
boolean isTransparent = (alpha==0);
于 2013-03-20T11:22:08.680 に答える
0
OnTouchListenerをビューに設定し、三角形の内側をクリックしたかどうかを確認できます(OnTouchイベントはMotionEventオブジェクトを送信し、そこからタッチイベントの座標を取得できます)。
ボタンが長方形としてクリック可能であるなら、それはより良いでしょう?ここのように、stackoverflowでは、投票ボタンも三角形の形をしていますが、長方形の形でクリックできます。
于 2013-03-20T11:24:40.497 に答える