【问题标题】:screen on tuch point shown and record the data of xy tuch触摸点上的屏幕显示并记录 xy tuch 的数据
【发布时间】:2016-05-19 10:17:10
【问题描述】:

我正在为通过 android 上的算法绘制的图形创建一个简单的 UI,您可以在其中触摸屏幕的某个部分以在屏幕上生成随机点。我的主要问题是是否可以将屏幕分成 4 个象限并识别何时触摸这些象限?

【问题讨论】:

标签: java android android-layout user-interface android-fragments


【解决方案1】:
    RelativeLayout root = (RelativeLayout) findViewById(R.id.root);

    Display display = getWindowManager().getDefaultDisplay();

    Point size = new Point();
    display.getSize(size);
    final int screenWidth = size.x;
    final int screenHeight = size.y;

    root.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_UP) {
                if (event.getX() < screenWidth / 2) {
                    if (event.getY() < screenHeight / 2) {
                        // you are 1. area
                    } else {
                        // you are 2. area
                    }
                } else {
                    if (event.getY() < screenHeight / 2) {
                        // you are 3. area
                    } else {
                        // you are 4. area
                    }
                } 
            }
            return false;
        }
    });

【讨论】:

    【解决方案2】:

    您可以获取屏幕的位置和大小并轻松计算。 这个函数来获取触摸的位置

    //function to take the position of touch
        @Override
        public boolean onTouch(View v, MotionEvent event) {
           int x = event.getX();
           int y = event.getY();
           return true;
        }
    //function to get screen size
         private void setScreenSize() {
                DisplayMetrics displaymetrics = new DisplayMetrics();
                getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);//need context
                 height = displaymetrics.heightPixels;
                 width = displaymetrics.widthPixels;
    
            }
    

    【讨论】:

      猜你喜欢
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-18
      相关资源
      最近更新 更多