Android onTouch并协调

时间:2017-02-16 17:53:46

标签: android onclick coordinates ontouchevent

我有这个XML,其中我有一个相对布局和一个按钮

enter image description here

XML代码:

<RelativeLayout
    android:layout_width="500dp"
    android:layout_height="250dp"
    >

    <Button
        android:id="@+id/triggerButton"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:background="@color/colorAccent"
        android:layout_marginTop="94dp"
        android:layout_alignParentTop="true"
        android:layout_weight="0.5"
        android:keepScreenOn="false" />

    <RelativeLayout
        android:layout_width="500dp"
        android:layout_height="250dp"
        android:id="@+id/relativeLayout_Touch"
        android:background="@android:color/holo_green_light"
        android:elevation="2dp">
    </RelativeLayout>

另外,我有这个代码来获取onClick的坐标和一个代码来获取按钮的坐标。

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
                point.x = event.getX();
                point.y = event.getY();
                String message = point.x + " " + point.y      

                int[] test = new int[2];
                btTrigger.getLocationOnScreen(test);

                String message2 = "X: " + test[0] + "," + "Y: " + test[1];
                Log.e("COORDINATE", message);
                Log.e("BUTTON COORDINATE", message2);

        }
        invalidate();
        return true;

    }

如何点击按钮的位置,而不点击按钮本身。 (我无法点击,因为RelativeLayout位于按钮的前面。)

它需要位于按钮前面,因为每当用户点击relativelayout时都会有一个红色圆圈。

canvas.drawCircle(point.x, point.y, 100, paint);

我脑子里有两个选择,如果有可能的话就是idk:

  1. 增加点击的大小以调整按钮大小?
  2. 或尝试合并(?)按钮和relativelayout。 (每当我点击按钮时,圆圈的图形仍然会出现。

0 个答案:

没有答案