gpt4 book ai didi

android - 在具有凹 View 或凸 View 的单击事件上

转载 作者:行者123 更新时间:2023-11-29 21:37:57 25 4
gpt4 key购买 nike

我正在使用 Android SDK 创建 Android 回合制游戏。

我的问题是我不知道如何使用选择器检测这种形式的 onclick 事件,因为选择器只有椭圆形、矩形、环形和线形。

image

有什么想法吗?

解决方案

根据这篇文章https://stackoverflow.com/a/14516572/2139691凹形或凸形自定义 View 的完整代码如下:

public class CustomView extends View {

private final Bitmap bitmap;

public CustomView(Context context, AttributeSet attrs) {
super(context, attrs);
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.myimage);
}

@Override
protected synchronized void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawBitmap(bitmap, this.getX(), getY(), null);
}

@Override
public boolean onTouchEvent(MotionEvent event) {
super.onTouchEvent(event);

float iX = event.getX();
float iY = event.getY();

switch (event.getAction()) {

case MotionEvent.ACTION_DOWN:
//Makes sure that X and Y are not less than 0, and no more than the height and width of the image.
if (iX >= 0 & iY >= 0 & iX < bitmap.getWidth() & iY < bitmap.getHeight()) {
if (bitmap.getPixel((int) iX, (int) iY) != 0) {
Log.i("Custom view", "Touched!!!");
}
}
return true;
}
return false;

}

}

希望它能帮助其他寻找标题“凹面或凸面 View ”而不是“自定义 View ”的人。

最佳答案

这篇文章几乎为您的问题提出了一些解决方案 Android Custom Shape Button

关于android - 在具有凹 View 或凸 View 的单击事件上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com