UIStoryBoard和UIPageViewController和initWithTransitionStyle
问题描述:
我很困惑如何使用故事板和自定义initaliziers。UIStoryBoard和UIPageViewController和initWithTransitionStyle
我需要在UIPageViewController上调用initWithTransitionStyle。
但是,如果故事板为我创建UIPageViewController,该怎么办?
从调试,我可以看到,我的UIPageViewController上调用initWithCoder。
答
根据该文件,只有一个过渡的风格:
过渡样式
样式的翻页过渡。
enum { UIPageViewControllerTransitionStylePageCurl = 0 }; typedef NSInteger UIPageViewControllerTransitionStyle;
常量
UIPageViewControllerTransitionStylePageCurl
页面卷曲的过渡风格。 当指定页面卷曲转换样式时,页面视图控制器在视图控制器之间转换时显示翻页动画。如果指定了数据源,则在导航手势期间,动画会跟随用户的手指。 Available in iOS 5.0及更高。 在UIPageViewController.h中声明。
当他们介绍别人时,我希望你能够在界面构建器中定义它们。
答
如果您正在使用故事板(又名,将UIPageViewController拖放到故事板上),它已经被初始化,所以我不确定为什么需要初始化它。
如果您只想更改过渡样式,导航方向,页面间距等,这些都是属性检查器选项卡中的所有选项。
答
SecondViewController* bvc = [[SecondViewController alloc] init];
[UIView transitionWithView:self.view.window
duration:1.0f
options:UIViewAnimationOptionTransitionCurlUp
animations:^{
[self.navigationController pushViewController:bvc animated:NO];
}
completion:NULL];
[self.navigationController pushViewController:bvc animated:YES];
答
我发现这个问题的解决方案: 这里有云:在appdelegate.m
文件
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
CountBookViewController *bc = [[CountBookViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
[bc awakeFromNib];
self.window.rootViewController = bc;
[self.window makeKeyAndVisible];
return YES;
}
请停止在标题写标签。 –