pageviewcontroller 中的 PageCurlEffect 与工具栏重叠
Posted
技术标签:
【中文标题】pageviewcontroller 中的 PageCurlEffect 与工具栏重叠【英文标题】:PageCurlEffect in pageviewcontroller overlaps toolbar 【发布时间】:2013-07-01 19:31:04 【问题描述】:在 pageviewcontroller 中使用 Pagecurleffect 每当我翻页时它都会与工具栏重叠。
这是我的代码
- (void)viewDidLoad
[super viewDidLoad];
modelArray = [[NSMutableArray alloc] init];
for (int index = 1; index <= totalPages; index++)
[modelArray addObject:[NSString stringWithFormat:@"%i", index]];
thePageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStylePageCurl navigationOrientation: UIPageViewControllerNavigationOrientationHorizontal options:nil];
thePageViewController.delegate = self;
thePageViewController.dataSource = self;
thePageViewController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
contentViewController = [[ContentViewController alloc] initWithPDF:PDFDocument];
contentViewController.page = [modelArray objectAtIndex:0];
NSArray *viewControllers = [NSArray arrayWithObject:contentViewController];
[thePageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];
[self addChildViewController:thePageViewController];
[self.view addSubview:thePageViewController.view];
thePageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
[thePageViewController didMoveToParentViewController:self];
在内容视图控制器中在 viewdidload 中使用此代码
- (void)viewDidLoad
[super viewDidLoad];
// Create our PDFScrollView and add it to the view controller.
CGPDFPageRef PDFPage = CGPDFDocumentGetPage(thePDF, [_page intValue]);
pdfScrollView = [[PDFScrollView alloc] initWithFrame:CGRectMake(0, 46, self.view.bounds.size.width, 915)];
[pdfScrollView setPDFPage:PDFPage];
[self.view addSubview:pdfScrollView];
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
pdfScrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
_toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 965, self.view.bounds.size.width, 40)];
_toolbar.barStyle = UIBarStyleBlackOpaque;
[self.view addSubview:_toolbar];
当它在翻页时与工具栏重叠时看起来不太好。我该如何解决这个问题。
我想要第二张图片
在导航栏下翻页不重叠导航栏。 谢谢
【问题讨论】:
您能否附上屏幕截图以帮助我们了解发生了什么? 添加了模拟器截图 【参考方案1】:您在每个页面中添加一个工具栏,它在页面内部。
您必须在第一个代码块上创建工具栏,并在末尾添加[self.view bringSubviewToTop:_toolbar];
【讨论】:
我在 pageviewcontroller 中添加了工具栏,现在它工作正常,之前它在内容视图控制器中。我没有添加这段代码 [self.view bringSubviewToTop:_toolbar];使用相同的 [self.view addSubview:_toolbar];现在工作正常。非常感谢您的帮助。以上是关于pageviewcontroller 中的 PageCurlEffect 与工具栏重叠的主要内容,如果未能解决你的问题,请参考以下文章
如何移动到 pageViewController 中的特定页面?
PageViewController 中的 UITableViewCell 表现不同
(Swift) 如何使用触摸按钮更改 pageviewcontroller 中的视图
pageviewcontroller 中的 PageCurlEffect 与工具栏重叠