本文实例为大家分享了Android实现跟随手指画圆的具体代码,供大家参考,具体内容如下

首先自己定义一个View子类:
package com.example.androidtest0.myView;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
public class DrawView extends View {
public float currentX = 40;
public float currentY = 50;
//定义、并创建画笔
Paint p = new Paint();
public DrawView(Context context) {
super(context);
}
public DrawView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//设置画笔的颜色
p.setColor(Color.RED);
//绘制一个小球
canvas.drawCircle(currentX, currentY, 15, p);
}
/**
* 为该组件的触碰事件重写事件处理方法
*/
@Override
public boolean onTouchEvent(MotionEvent event) {
//改动currentX、currentY两个属性
currentX = event.getX();
currentY = event.getY();
//通知当前组件重绘自己
invalidate();
return true;
}
}
主界面XML:
custom_layout.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/root" android:orientation="vertical" > </LinearLayout>
主activity:
package com.example.androidtest0;
import com.example.androidtest0.myView.DrawView;
import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
public class CustomView extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.custom_layout);
//获取布局文件里LinearLayout容器
LinearLayout root = (LinearLayout)findViewById(R.id.root);
//创建DrawView组件
final DrawView drawView = new DrawView(this);
//设置自己定义组件的最小宽度、高度
drawView.setMinimumWidth(10);
drawView.setMinimumHeight(10);
root.addView(drawView);
}
}
效果:
除此之外:
还能够用XML的方式:也是首先建一个View的子类。和上面一样。
然后主界面XML例如以下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/root"
android:orientation="vertical" >
<com.example.androidtest0.myView.DrawView
android:layout_width="match_parent" android:layout_height="match_parent"
/>
</LinearLayout>
主activity文件例如以下:
package com.example.androidtest0;
import com.example.androidtest0.myView.DrawView;
import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
public class CustomView extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.custom_layout);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Android
# 跟随手指
# 画圆
# 利用Android画圆弧canvas.drawArc()实例详解
# Android自定view画圆效果
# Android自定义View画圆功能
# Android项目实战手把手教你画圆形水波纹loadingview
# Android圆形控件实现画圆效果
# 子类
# 还能
# 重写
# 大家分享
# 具体内容
# 大家多多
# 为该
# 触碰
# currentY
# super
# context
# currentX
# public
# MotionEvent
# DrawView
# float
# extends
# RED
# setColor
# drawCircle
相关文章:
建站之星安装需要哪些步骤及注意事项?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
相册网站制作软件,图片上的网址怎么复制?
大同网页,大同瑞慈医院官网?
宿州网站制作公司兴策,安徽省低保查询网站?
c# 服务器GC和工作站GC的区别和设置
如何通过建站之星自助学习解决操作问题?
如何用PHP工具快速搭建高效网站?
如何用免费手机建站系统零基础打造专业网站?
如何快速搭建FTP站点实现文件共享?
网页设计网站制作软件,microsoft office哪个可以创建网页?
模具网站制作流程,如何找模具客户?
如何快速搭建安全的FTP站点?
网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?
赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?
如何在云主机快速搭建网站站点?
C++如何使用std::optional?(处理可选值)
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?
建站中国官网:模板定制+SEO优化+建站流程一站式指南
如何快速重置建站主机并恢复默认配置?
建站之星安装模板失败:服务器环境不兼容?
建站之星如何开启自定义404页面避免用户流失?
如何基于云服务器快速搭建个人网站?
如何配置IIS站点权限与局域网访问?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
网站制作公司排行榜,抖音怎样做个人官方网站
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
建站之星伪静态规则如何正确配置?
如何通过老薛主机一键快速建站?
如何在Windows环境下新建FTP站点并设置权限?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
Java解压缩zip - 解压缩多个文件或文件夹实例
建站三合一如何选?哪家性价比更高?
如何在云虚拟主机上快速搭建个人网站?
如何制作一个表白网站视频,关于勇敢表白的小标题?
如何在Windows服务器上快速搭建网站?
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
如何彻底卸载建站之星软件?
高防服务器:AI智能防御DDoS攻击与数据安全保障
想学网站制作怎么学,建立一个网站要花费多少?
建站之星如何修改网站生成路径?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
简单实现Android验证码
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
成都网站制作报价公司,成都工业用气开户费用?
如何高效完成自助建站业务培训?
*请认真填写需求信息,我们会在24小时内与您取得联系。