【问题标题】:iPhone - How to add the page curl effect to the custom views?iPhone - 如何将页面卷曲效果添加到自定义视图?
【发布时间】:2011-11-17 08:38:39
【问题描述】:

我看过一些关于如何在 iOS 上实现页面卷曲效果的库(例如 https://github.com/brow/leaves)。

但这些仅限于 pdf、图像或 coregraphics 绘图。我想要实现的是一个页面应该被一个自定义视图(比如一个包含几个按钮、一个 imageview、一个 UITableView 等的视图)替换。
现在我的问题是我们如何为一组不同的自定义视图(来自不同的视图控制器)设置页面卷曲效果?

【问题讨论】:

标签: iphone uiviewcontroller quartz-graphics page-curl


【解决方案1】:
SampleViewController *sampleView = [[[SampleViewController alloc] init] autorelease];
[sampleView setModalTransitionStyle:UIModalTransitionStylePartialCurl]; 
[self presentModalViewController:sampleView animated:YES];

【讨论】:

    【解决方案2】:

    看看UIView中的transitionFromViewtransitionWithView方法:

    [UIView transitionWithView:containerView
                      duration:0.2
                       options:UIViewAnimationOptionTransitionFlipFromLeft
                    animations:^{
                        [fromView removeFromSuperview]; 
                        [containerView addSubview:toView]; 
                    }
                    completion:NULL
     ];
    

    options参数可以设置为UIViewAnimationOptionTransitionCurlUp/UIViewAnimationOptionTransitionCurlDown

    【讨论】:

      【解决方案3】:

      不确定您想要实现什么目标?它是一种模态对话框,其控件位于像地图应用程序那样的卷曲角后面,还是像 iBooks 那样的全书式页面卷曲?

      首先看史蒂夫乔布斯的回答(从没想过我会这么说),后者可以通过UIPageViewController 完成(从 UIPageViewController 开始看here)。

      【讨论】:

      • 是的,我想要第二个。有什么办法我可以在 4.0 中做到这一点,因为 UIPageViewController 只能从 iOS 5.0 开始使用。
      • 不,据我所知(并且搜索了很多),在 4.x 中无法使用内置的东西。在 5 之前的 iOS 版本中,有内置的 curl 动画,但只有向上和向下。然而,iPhone/iPad 有一些类似书本卷曲的开放实现,但它们有缺陷、速度慢、难以使用/理解和/或使用私有 API。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      • 2012-01-26
      相关资源
      最近更新 更多