gpt4 book ai didi

flutter - Flutter 中的原始触摸/滑动数据?与带有 Android Studio 的 Java 相比?

转载 作者:IT王子 更新时间:2023-10-29 07:00:53 25 4
gpt4 key购买 nike

我是 Flutter 开发的新手,我必须快速决定它是否适合我的实习项目。

我必须创建一个界面,它需要所有方向的滑动才能导航到不同的菜单(我正在考虑进行嵌套的水平和垂直滚动,我在 Android Studio 中遇到过这个问题)——但更重要的是,我必须保存触摸/点击/滑动的原始数据。我不能只保存“左滑”或“右滑”,我还必须知道压力、速度、位置、确切路径等。

这在 flutter 中可行吗?与 Android Studio 相比,Flutter 如何处理这些原始数据? flutter 是否仅确定滑动的大致方向,仅此而已?

我一整天都在寻找答案,但我一定是遗漏了一些关键词,因为到目前为止我一直找不到答案。

最佳答案

GestureDetector在这方面是一个非常广泛的 Widget。它具有您正在寻找的所有功能。它的一个更简单的版本,也内置了 Material 设计,是 InkWell ,但这可能缺少您正在搜索的某些功能。

使用 GestureDetector 包裹您的 Widget,您将能够捕获所有命中事件(您甚至可以指定 HitTestBehavior(使用 行为参数)。

对于您的自定义交互,已实现大量回调。我把你链接到the constructor ,其中包含一堆有用的参数,如 onTapDown/UponVertical/Horizo​​ntalDragStart/Update /结束

这甚至还不是全部,但是您可以使用它们以编程方式定义您的行为。让我用一个小例子来解释这个概念:

Offset start;

void verticalDragStart(DragStartDetails details) {
// process the start by working with the details
start = details.globalPosition;
// ...
}

void verticalDragUpdate(DragUpdateDetails details) {
// apply your logic
Offset delta = details.delta;
// ...
}

// use DragEnd, also for horizontal, pan etc.

@override
Widget build(BuildContext context) => GestureDectector(
onVerticalDragStart: verticalDragStart,
// ...
);

我希望您能想象这能够的所有可能性。您还可以组合不同的回调。看看parameters in the documentation并尝试适合您的方法。

我认为这是您要求的原始数据

关于flutter - Flutter 中的原始触摸/滑动数据?与带有 Android Studio 的 Java 相比?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50708028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com