安卓学习笔记14:安卓手势操作编程
文章目录
- 零、学习目标
- 一、安卓手势操作原理
- 二、安卓手势类与接口
- 1、MotionEvent
- 2、GestureDetector
- 3、OnGestureListener
- 三、教学案例——利用手势切换美女图片
- (一)运行效果
- (二)涉及知识点
- (三)实现步骤
- 1、创建安卓应用【SwtichBelleImageByGesture】
- 2、将美女图片素材拷贝到drawable目录
- 3、主布局资源文件activity_main.xml
- 4、主界面类MainActivity
- 5、启动应用,查看效果
- 四、课后作业
零、学习目标
- 能说出安卓手势操作原理
- 能说出安卓手势类与接口
- 能利用安卓手势编写应用程序
一、安卓手势操作原理
在安卓系统中,每一次手势交互都会依照以下顺序执行,这个顺序可以说就是安卓手势操作的原理。
- 触屏一刹那,触发一个MotionEvent事件。
- 该事件被OnTouchListener监听,在其onTouch()方法里获得该MotionEvent对象。
- 通过GestureDetector(手势侦测器)将此MotionEvent对象移交给OnGestureListener。
- OnGestureListener监听器获得该事件对象,然后根据该对象封装的信息,做出合适的处理。
二、安卓手势类与接口
1、MotionEvent
动作事件类,用于封装手势、触摸笔、轨迹球等等的动作事件。其内部封装了两个重要的属性X和Y,这两个属性分别用于记录横轴和纵轴的坐标。
2、GestureDetector
手势侦测器,用于识别各种手势。
3、OnGestureListener
手势监听器,是一个手势交互的监听接口,其中提供了多个抽象方法,并根据GestureDetector的手势识别结果调用相对应的方法。
三、教学案例——利用手势切换美女图片
(一)运行效果
(二)涉及知识点
- 线性布局(LinearLayout)
- 动作事件(MotionEvent)
- 手势侦测器(GestureDetector)
- 手势监听器(OnGestureListener)
(三)实现步骤
1、创建安卓应用【SwtichBelleImageByGesture】
2、将美女图片素材拷贝到drawable目录
3、主布局资源文件activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/root"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@drawable/img1"android:orientation="vertical"tools:context=".MainActivity">
</LinearLayout>
4、主界面类MainActivity
- 定义常量和变量
- 通过资源标识符获取控件实例
- 初始化图像标识数组
- 实例化手势侦测器,每个事件处理方法输出一条调试信息
- 编写onFling()事件处理方法,通过手势切换图片
- 代码说明:如果希望程序对手势滑动更敏感,那么可以减少滑动幅度,比如从20个像素减少到5个像素。
- 将窗口的触摸事件交给手势侦测器来处理
5、启动应用,查看效果
四、课后作业
改进做过的电子相册应用:
- 可以通过手势来切换图片
- 通过两点触摸来缩放图片
安卓学习笔记14:安卓手势操作编程相关推荐
- 安卓学习笔记14:列表视图
文章目录 1.创建安卓应用[ReadAncientPoetry] 2.将背景图片拷贝到drawable目录 3.布局资源文件activity_main.xml 4.诗歌列表项模板poem_list_i ...
- 【安卓学习笔记】安卓的事件处理
安卓提供了两种方式的事件处理:基于回调的事件处理和基于监听的事件处理. 基于监听的事件处理 基于监听的事件处理一般包含三个要素,分别是: Event Source(事件源):事件发生的场所,通常是各个 ...
- 安卓学习笔记:安卓11访问/读写 Android/data 目录
省流提示:采用android studio工具开发,记录一次低级的开发,避免以后忘记或者踩坑. 最近有个业余项目开发到一小半,过程中需要读写 Android/data目录的文件,采用常规的文件操作总是 ...
- 2020年安卓学习笔记目录
文章目录 一.讲课笔记 二.安卓案例 三.安卓实训项目 四.学生安卓学习博客 五.安卓课后作业 (一)界面设计练习 1.制作登录界面 2.制作部队管理界面 3.制作灭火救援界面 4.制作交付界面 5. ...
- xamarin学习笔记A19(安卓AIDL)
(每次学习一点xamarin就做个学习笔记和视频来加深记忆巩固知识) 如有不正确的地方,请帮我指正. AIDL简介 AIDL(Android Interface Definition Langua ...
- 很low的安卓学习笔记(一、实用技巧)
很low的安卓学习笔记(一.实用技巧) 一.学习了几天的实用技巧小总结: 1.规范的定义内容的格式: 2.一些快捷键 3.将xxx.xml布局改为Activity中可以调用的View视图 4.当左下角 ...
- 安卓学习笔记3——登录界面UI
安卓学习笔记3--登录界面UI 一.登录界面UI 1.根据需求写UI 2.主活动 3.主活动调用的读写文件的工具类 4.效果展示 二.总结与改进 不足: 1.密码分割采用字符串:当密码和用户名包含该字 ...
- 安卓学习笔记07:事件处理、窗口跳转与传递数据
文章目录 零.学习目标 一.三个基本控件 1.标签控件(TextView) 2.编辑框控件(EditText) 3.按钮控件(Button) 二.安卓事件处理机制 (一)安卓事件处理概述 (二)安卓事 ...
- 安卓学习笔记之骚扰拦截
安卓学习笔记之骚扰拦截 1.监听电话状态 2.检测来电号码是否匹配拦截条件 3.若匹配,则挂断电话 实例代码: 获取TelephonyManager 对象,并监听来电状态 TelephonyManag ...
最新文章
- 什么事情是你当了老板才知道的?
- CNNIC互联网报告:中国网民超8亿 前沿科技进展显著
- 从零开始学习python-从零开始学python
- 安装 | Windows 10下基于Anaconda平台的TensorFlow详细安装步骤
- html5中将doctype分为几种,html5与html 4.01的区别 doctype几种分类及其不同
- 哈哈哈,只有程序员才懂的黑色幽默 ... ...
- Redis八种数据类型及应用场景介绍
- hbase集群 数据写入_大数据入门必学 - Hbase集群搭建
- 百度内容审查做敏感词库筛选
- php实现mpg自动提取音轨,视频如何导出音轨 怎么将双音轨mpg提取其中一个音轨保存...
- C语言字符数组练习题
- 图像的上采样、下采样
- 剑指offer T26 重排链表
- 车盲普及贴系列.一.到底什么样车才安全
- centos安装phpstudy(小皮)
- 玉米社:SEM竞价推广预算设置方法
- cad2011 2010闪退问题
- 新人如何利用今日头条自媒体平台赚钱?月收入轻松过万
- 安卓4.4pppoe拨号间隔及轮次修改
- 云计算,你知道多少?
热门文章
- 微服务架构下,DLI的部署和运维有何奥秘?
- 华为云社区·CSDN【寻找黑马程序员】有奖征文活动,邀你挥洒才情
- easyphp 登陆mysql_EasyPHP/phpmyadmin 尝试连接到 mysql 服务器 但服务器拒绝连接
- poj 1789 TruckHistory 最小生成树 Kruskal、Prim
- JAVA 测试日期的不同显示格式
- python open encoding_Python文件操作
- ping和telnet的区别
- ubuntu python3.7修改默认pip版本_Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
- python降维之时间类型数据的处理_Python学习数据降维方法
- 模态识别在计算机视觉应用,相关性学习在计算机视觉任务中的研究与应用