iOS UI代码片段-UIPageViewController的使用
来源:互联网 发布:java 编程思想笔试题 编辑:程序博客网 时间:2024/05/19 19:57
使用UIPageViewController作为容器,可以盛装多个ViewController,高效实现可以左右/上下滑动切换不同流。
代码片段:
遵守
UIPageViewControllerDataSource,
UIPageViewControllerDelegate,
协议创建pageViewController对象:
//创建底部的pageViewController- (void)createPageViewControlelr{ //创建pageView视图,作为整个滑动视图控制器 //创建配置 NSDictionary * dic = [NSDictionary dictionaryWithObject:[NSNumber numberWithInteger:UIPageViewControllerSpineLocationMin] forKey:UIPageViewControllerOptionSpineLocationKey]; //创建pageController对象;并且只允许左右滑动 self.downPageViewController = [[UIPageViewController alloc]initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:dic]; self.downPageViewController.automaticallyAdjustsScrollViewInsets = NO; //设置背景颜色 self.downPageViewController.view.backgroundColor = [UIColor whiteColor]; //设置pageViewController的view的frame; [self.downPageViewController.view setFrame:CGRectMake(0, 0,mScreenWidth,mScreenHeight)]; //设置代理 self.downPageViewController.delegate = self; self.downPageViewController.dataSource = self; //持有pageViewController,并且展示view //[self.view addSubview:self.downPageViewController.view]; //[self addChildViewController:self.downPageViewController]; [self presentViewController:self.downPageViewController animation:NO complate:NULL]; self.downPageViewController.view.backgroundColor = [UIColor colorWithRGBHexString:@"#EFEFF4"];}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController{ NSInteger index = [self indexOfCardViewController:(UIViewController *)viewController]; //准备前面一页 return [self cardViewControllerWithIndex:index - 1];}- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController{ NSInteger index = [self indexOfCardViewController:(UIViewController *)viewController]; //准备后面一页 return [self cardViewControllerWithIndex:index + 1];}- (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray<UIViewController *> *)previousViewControllers transitionCompleted:(BOOL)completed{ NSInteger index = [self indexOfCardViewController:pageViewController.viewControllers[0]]; //滑动切换了流}//pageViewController代理辅助方法- (UIViewController *)cardViewControllerWithIndex:(NSInteger)index{ //如果越界,不要取 if (index >= 0 && index < self.cardContentViewControllers.count) { return self.cardContentViewControllers[index]; } return nil;}//获取对应的位置- (NSInteger)indexOfCardViewController:(UIViewController *)cardViewController{ return [self.cardContentViewControllers indexOfObject:cardViewController];}
阅读全文
0 0
- iOS UI代码片段-UIPageViewController的使用
- iOS UIPageViewController - 使用总结
- IOS 使用UIPageViewController创建开始屏幕 附代码
- UIPageViewController的使用(Swift)
- UIPageViewController 的简单使用
- UIPageViewController的简单使用
- UIPageViewController的简单使用
- android 常用UI使用工具代码片段
- iOS 有用的代码片段
- iOS实用的代码片段
- iOS UIPageViewController
- iOS代码常用的代码片段
- ThreadLocal的使用[代码片段]
- iOS 5 新增的UIPageViewController 简单示例
- ios常用的代码片段(snippet)
- iOS 常用的代码片段 一
- iOS 监听文本框的改变 代码片段
- iOS 代码片段
- erp10--excel数据导出--poi
- Go游戏服务器开发的一些思考(四):综合考察(下)
- 马踏棋盘的实现
- CSS之REM属性
- Fragment的概述
- iOS UI代码片段-UIPageViewController的使用
- UOJ#217. 【UNR #1】奇怪的线段树
- 对象的创建
- Java7并发编程指南——第六章:并发集合
- IC设计基础系列之CDC篇9:跨时钟域信号传输(一)——控制信号篇
- 楔子
- JBPM学习(一):实现一个简单的工作流例子全过程
- 安装svn的两种方式
- POJ 2531 Network Saboteur