可点击的滚动图像

时间:2018-12-28 13:49:05

标签: android image android-imageview

我有一个活动,其中包含可滚动的图像视图->图像大于手机屏幕,因此可滚动。

我希望图像的几个点可以单击。 如果图像可滚动怎么办,我还需要检测用户单击了图像的哪一部分?

谢谢

1 个答案:

答案 0 :(得分:0)

如果要提供这种功能,则必须将图像分为不同的部分。因为ImageView是一个能够处理整个图像本身的触发事件的元素。触摸中间,右上,左下,右四分之一或任何位置都没有关系。您唯一可以确定的是通过以下功能放置触摸的X和Y关联器:

imageView.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_DOWN){
            String xCordinate = String.valueOf(event.getX()
            String yCordinate = String.valueOf(event.getY();
        }
        return true;
    }
});

此外,如果要基于单击图像的哪个部分/部分来处理单个图像上的不同事件,则必须隐藏将触发事件的元素。在这种情况下,您可以使用带有ImageView背面和顶部4个按钮(左上,右上,左下,右下)的frameLayout,并使用以下代码隐藏按钮:

button.setVisibility(View.GONE);

并使功能围绕按钮的onClickListener进行。

希望我有道理。