也许你们可以帮助我。我有三种不同的观点(目前正在故事板中)。我希望用户在三个视图之间滑动而不是单击按钮。是否有一种简单的方法可以启用滑动并允许从左到右和从右到左滑动?
我一直在研究Apples Dev。网站,发现一些有用的东西没有真正解释在视图之间切换。
答案 0 :(得分:2)
在iOS中切换视图的一些方法 -
NavigationViewController
更严格的内存管理。ModalViewControllers
。在所有三个中,第一个虽然是更多mem eff。但要在视图之间转换动画是很困难的。第二个也是如此。第三种方法为您提供了在视图转换之间提供自定义动画的最大灵活性,但您需要自己真正处理内存管理。
现在回到你的特定问题;看起来很简单。你可以采取几种方法 -
UIScrollView
&仅启用水平滚动&分页。现在在此scrollView中添加您的视图。在刷卡时,你会看到你的新观点。UISwipeGestureRecognizer *swipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleViewsSwipe:)]; [swipe setDirection:UISwipeGestureRecognizerDirectionLeft]; [yourView addGestureRecognizer:swipe]; [swipe release];
使用此功能,滑动手势在yourView
上定义,如果某个滑动iOS会点击选择器handleViewsSwipe
。您可以处理用户在此处滑动时发生的情况。
将选择器定义为
- (void)handleViewsSwipe:(UISwipeGestureRecognizer *)gesture
希望这会有所帮助..
答案 1 :(得分:1)
是的,您只需使用UISwipeGestureRecognizer识别左右滑动:
如果对您而言,您需要为iOS 3.2之前做一些不同的事情。
在视图之间切换非常简单,您只需构建三个不同的子视图,并只显示您需要的视图。还有其他方法可以做到这一点,具体取决于您使用的材料类型 - 我需要更多信息来提供更具体的答案。
答案 2 :(得分:0)
您也可以考虑滚动视图。特别是如果您最终可能需要分页,或者如果您将它们用于图像,则可能需要放大和缩小。
答案 3 :(得分:0)
UIPageControl怎么样?您可以使用它来检测/控制在页面之间切换的请求,然后使用委托UIControlEventValueChanged
事件来切换视图中的内容。