1

我即将启动一个需要特定功能的新 iPhone 应用程序,但我不确定它是否可行。我愿意研究,但首先我只是想知道我是否应该至少考虑一下。

我以前没有在应用程序中看到过这个(这是我主要关心的问题,尽管我没有看到太多应用程序,因为我没有 iPhone),但一个例子是 iPhone 快捷方式面板:你可以按住在一个应用程序上,然后将其拖动到另一个面板,在拖动的同时进行扫描。但这是核心应用程序,是否可以在普通应用程序中重现类似的东西?

我只需要确保在我开始挖掘之前可以完成它,我不需要代码示例或任何东西,但如果你有一些你认为有用的确切资源,那将不胜感激。

谢谢!

4

3 回答 3

1

是的。如果您在 UIScrollView 中有自定义 UIView 子类实例,则您的视图控制器只需将 UIScrollView 设置为延迟内容触摸并且不允许它取消触摸事件。

[scrollView setCanCancelContentTouches:NO];
[scrollView setDelaysContentTouches:YES];

当用户在自定义视图中点击并按住时,事件会转到该自定义视图,它可以处理触摸事件以拖动项目,但如果用户快速滑动,它会滚动视图。

于 2010-01-08T01:02:41.883 回答
0

您所指的“面板”视图似乎是一个UIPageControl视图——尽管 Apple 用于 iPhone 主页的该视图的具体化身可能是定制的。

UIView您可能触摸并拖动的通用视图的实例将接收触摸事件。通过覆盖视图中的方法,可以处理这些事件并将其传递给页面控件,以便告诉它在页面之间“扫描”。

如果我想做你要问的事情,我可能会这样做。无论如何,这对我来说似乎是可行的。

于 2010-01-07T14:55:14.823 回答
0

从这个开始:从一个视图滑动到下一个视图

尝试使用UIButton跟踪按钮状态更改为“突出显示”以来的时间。您可能需要执行此操作以跟踪拖动并移动按钮:

在 UITableView 中观察捏合多点触控手势

检查按钮在拖动时是否开始与屏幕的一侧重叠。如果 s 从按钮开始重叠边缘开始经过一定时间,然后操作 sUIScrollView使其切换到屏幕对应侧的下一页

您可能需要使用NSTimer来跟踪按钮被按住的时间等。

无论如何,这没有理由不起作用。

如果 UIButton 不起作用,那么也许可以尝试 UIControl 的自定义子类(它跟踪相同的触地动作等)。如果这不起作用,则使用窗口事件拦截器来跟踪所有内容。

于 2010-01-07T16:44:27.320 回答