Android Studio如何创建一个没有方形边界的图像?

时间:2015-10-13 13:41:49

标签: android android-studio bitmap onclick imageview

出乎意料的是,我无法在互联网上找到如何创建一个没有方形边界的图像对象的方法,因此只有当用户在图像内部点击时才会触发onClick事件。

onClick event should not fire up when a user click at this point outside the image

onClick event should only fire up when a user click at a point inside the image

非常欢迎所有方式和方法。谢谢。

2 个答案:

答案 0 :(得分:1)

如果你用作ImageView,你可以设置: background =" @ null" ,希望这可以帮到你。

答案 1 :(得分:0)

来自其他博客的示例:

 @Override

public boolean onTouchEvent(MotionEvent event) {

    int action = event.getAction();

    if(action != MotionEvent.ACTION_DOWN) {

        return super.onTouchEvent( event);

    }

    int x = (int)event.getX();

    int y = (int)event.getY();

    if(width == -1 || height == -1) {

        Drawable drawable = ((StateListDrawable)getBackground()).getCurrent();

        bitmap = ((BitmapDrawable)drawable).getBitmap();

        width = getWidth();

        height = getHeight();

    }

    if(null == bitmap || x < 0 || y < 0 || x >= width || y >= height) {

        return false;

    }

    int pixel = bitmap.getPixel( x, y);

    if(Color.TRANSPARENT == pixel) {

        return false;

    }

    return super.onTouchEvent( event);

}

博客:click here

博主意识到点击铬图标的不同部分,点击的部分加深颜色的功能,这里通过判断颜色来回应事件。

晚安!