zoukankan      html  css  js  c++  java
  • Android之屏幕测试

    MainActivity:

    package com.example.touchscreentest;
     
    import android.os.Bundle;
    import android.R.layout;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.View.OnTouchListener;
    import android.widget.LinearLayout;
     
    public class MainActivity extends Activity {
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //得到线性布局的容器
            LinearLayout linearLayout=(LinearLayout)findViewById(R.id.a);
           //创建出自定义的View
            final MyView myView=new MyView(this);
          //设置自定义组建的最大宽度和最大高度
            myView.setMinimumHeight(300);
            myView.setMinimumWidth(300);
            myView.setOnTouchListener(new OnTouchListener() {
                 
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    // TODO Auto-generated method stub
                    //设置位置
                    myView.current_x=(int)event.getX();
                    myView.current_y=(int)event.getY();
                    //设置位置之后开始重新画
                    myView.invalidate();
                    //返回true则表明已经处理了本事件
                    return true;
                     
                }
            });
            linearLayout.addView(myView);
        }
         
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
     
    }
        
    

      

    MyView:

    package com.example.touchscreentest;
     
    import android.content.Context;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.graphics.Paint;
    import android.view.View;
     
    public class MyView extends View {
        protected int current_x;
        protected int current_y;
        public MyView(Context context) {
            super(context);
            // TODO Auto-generated constructor stub
        }
        //重画时调用
        @Override
        protected void onDraw(Canvas canvas) {
            // TODO Auto-generated method stub
            super.onDraw(canvas);
            Paint p=new Paint();
            p.setColor(Color.RED);
            canvas.drawCircle(current_x, current_y, 10, p);
        }
     
    }
    

      

    执行效果图:

    不努力,还要青春干什么?
  • 相关阅读:
    利用阻止冒泡解决点击页面除去本身触发事件
    vijos p1304 回文数
    vijos p1484 ISBN号码
    vijos p1449 字符串还原
    vijos p1217 乒乓球
    vijos P1911 珠心算测验
    vijos p1001 谁拿了最多奖学金
    vijos P1848 记数问题
    Catalan公式
    【HDOJ】2104 hide handkerchief
  • 原文地址:https://www.cnblogs.com/caidupingblogs/p/5091174.html
Copyright © 2011-2022 走看看