- 论坛徽章:
- 0
|
Crize_demo\draw_demo\src\main\java\com\ly\draw_demo\DrawView.java- import android.content.Context;
- import android.graphics.Canvas;
- import android.graphics.Color;
- import android.graphics.Paint;
- import android.view.View;
- public class DrawView extends View {
- public float currentX = 40;
- public float currentY = 50;
- public DrawView(Context context) {
- super(context);
- }
- @Override
- protected void onDraw(Canvas canvas) {
- super.onDraw(canvas);
- //创建画笔
- Paint paint = new Paint();
- //设置画笔的颜色
- paint.setColor(Color.RED);
- //绘制一个小圆(作为小球)
- canvas.drawCircle(currentX,currentY,15,paint);
- }
- }
复制代码 Crize_demo\draw_demo\src\main\res\layout\activity_main.xml- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="horizontal"
- android:id="@+id/root"
- tools:context=".MainActivity">
- </LinearLayout>
复制代码 Crize_demo\draw_demo\src\main\java\com\ly\draw_demo\MainActivity.java- import android.app.Activity;
- import android.os.Bundle;
- import android.view.MotionEvent;
- import android.view.View;
- 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 root = (LinearLayout) findViewById(R.id.root);
- //创建DrawView组件
- final DrawView drawView = new DrawView(this);
- //设置自定义框架的宽度和高度
- drawView.setMinimumWidth(300);
- drawView.setMinimumHeight(500);
- //为drawView绑定Touch事件(触摸屏幕的监听事件)
- drawView.setOnTouchListener(new View.OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- //修改drawView组件的currentX,currentY两个属性
- drawView.currentX = event.getX();
- drawView.currentY = event.getY();
- //通知drawView组件重绘
- drawView.invalidate();
- //返回true表明处理方法已经处理该事件
- return true;
- }
- });
- root.addView(drawView);
- }
- }
复制代码 |
|