iphone通过向左和向右滑动手指来切换视图,类似于股票应用程序

时间:2010-10-02 00:47:04

标签: iphone views switch-statement

我对iphone股票应用程序的下半部分是如何实现感兴趣。应用程序的下半部分,您可以通过向左/向右滑动手指和视图下方的“...”来切换视图,以指示用户正在查看的视图。

它在我看来是一个tabview组件。我正在尝试寻找UI组件以及谷歌它,但我还没有找到类似的东西。我发现的大多数示例都使用滚动视图。当您向左/向右滑动手指时,会出现滚动条,更重要的是,视图下方没有“...”来指示用户正在查看哪个视图。

有人能指出一个类似的例子吗?

谢谢, 托马斯

3 个答案:

答案 0 :(得分:6)

这是一个UIScrollView,pagingEnabled设置为YES占据屏幕的大部分,下面是UIPageView。有关详细信息,请参阅Apple的PageControl sample code

您可以通过将滚动视图的 showsHorizontalScrollIndicatorshowsVerticalScrollIndicator属性设置为NO来关闭滚动指示器。

有关如何使用UIScrollView进行分页的深入示例,可能还需要查看PhotoScroller sample code。还有一个名为“使用滚动视图设计应用程序”的精彩视频,它使用WWDC 2010视频中的UIScrollView引导您完成分页视图。我强烈建议观看它和其他WWDC视频。您可以通过登录iOS开发人员中心并滚动到底部来获取它们。

此外,就像他们在视频中告诉您的那样,您不需要使用触摸事件或覆盖touchesBegan:withEvent:或类似功能来实现此目的。如果你这样做,你必须做很多工作,将你不关心的事件传递给你正在展示的视图和类似的东西。将pagingEnabled设置为YES的UIScrollView为您完成所有艰苦工作。

如果您由于某种原因不想使用滚动视图,则可以使用UIGestureRecognizer。但实际上,只需使用滚动视图。

答案 1 :(得分:1)

这称为触摸事件。更多,所以在iPhone上轻扫。

以下是两个例子。

下面是一段代码: 您首先需要告诉应用程序touchesBegan。

您可以为此找到有关API的一些详细信息。然后每次用户触摸iphone屏幕时都会自动调用委托方法。

- (void)touchesEnded:(NSSet*)touches withEvent:(UIEvent*)event {
    UITouch *touch = [touches anyObject];
    if (touch.info & UITouchSwipedRight) {
        [self changeViewRight];
    } else if (touch.info & UITouchSwipeLeft) {
        [self changeViewLeft];
    }
    return;
}

检查这个例子:

http://devblog.wm-innovations.com/tag/touchesbegan/

这是一个很好的例子。

希望这会有所帮助。 如果它做了一点,请告诉我。感谢

<强> PK

答案 2 :(得分:0)

看一下以下链接,浏览滑动视图可能是一种很好的方法。

Views Navigation Using Swipe Gesture