聲明:本文是作者AWeiLoveAndroid原創,版權歸作者AWeiLoveAndroid所有,侵權必究。如若轉發,請注明作者和來源地址!未經授權,嚴禁私自轉載!
今天詳細講解一下Flutter中的GestureDetector。
Flutter系列博文鏈接 ↓:
工具安裝:
Flutter基礎篇:
- 谷歌Flutter1.0正式版發布
- Flutter基礎篇(1)-- 跨平臺開發框架和工具集錦
- Flutter基礎篇(2)-- 老司機用一篇博客帶你快速熟悉Dart語法
- Flutter基礎篇(3)-- Flutter基礎全面詳解
- Flutter基礎篇(4)-- Flutter填坑全面總結
- Flutter基礎篇(5)-- Flutter代碼模板,解放雙手,提高開發效率必備
- Flutter基礎篇(6)-- 水平和垂直布局詳解
- Flutter基礎篇(7)-- Flutter更新錯誤全面解決方案(圖文+視頻講解)
- Flutter基礎篇(8)-- Flutter for Web詳細介紹
- Flutter基礎篇(9)-- 手把手教你用Flutter實現Web頁面編寫
- Flutter1.9升級體驗總結(Flutter Web 1.9最新版本填坑指南)
Flutter進階篇:
Dart語法系列博文鏈接 ↓:
Dart語法基礎篇:
Dart語法進階篇:
目錄:
一、手勢識別器分類
二、手勢識別器的相關閉包函數統計分析
三、各種手勢識別器的使用詳解
四、手勢識別器混合使用
五、手勢識別器使用時遇到的坑
一、手勢識別器分類
GestureDetector手勢操作是開發中必不可少的,Flutter中的GestureDetector一共有 7大類25種。
分別是:
Tap:
onTapDown: (details) {}, onTapUp: (details) {}, onTap: () {}, onTapCancel: () {},
雙擊:
onDoubleTap: () {},
長按:
onLongPress: () {}, onLongPressStart: () {}, onLongPressMoveUpdate: () {}, onLongPressUp: () {}, onLongPressEnd: () {},
垂直滑動:
onVerticalDragDown: (details) {}, onVerticalDragStart: (details) {}, onVerticalDragUpdate: (details) {}, onVerticalDragEnd: (details) {}, onVerticalDragCancel: () {},
水平滑動:
onHorizontalDragDown: (details) {}, onHorizontalDragStart: (details) {}, onHorizontalDragUpdate: (details) {}, onHorizontalDragEnd: (details) {}, onHorizontalDragCancel: () {},
Pan事件:
指針已接觸屏幕并可能開始移動。 onPanDown: (details) {}, 指針已經接觸屏幕并開始移動。 onPanStart: (details) {}, 與屏幕接觸并移動的指針再次移動。 onPanUpdate: (details) {}, 先前與屏幕接觸并移動的指針不再與屏幕接觸,并且當它停止接觸屏幕時以特定速度移動。 onPanEnd: (details) {}, 先前觸發 onPanDown 的指針未完成。 onPanCancel: () {},
Scale事件:
onScaleStart: (details) {}, onScaleUpdate: (details) {}, onScaleEnd: (details) {},
二、手勢識別器的相關閉包函數統計分析表:
我查看了一下每一個事件類型源碼,做了一張圖,如下所示:
手勢識別器最新內容.png
我們可以得到幾點信息: