我试图开发一个应用程序,在第一个选项卡上使用3个不同的视图控制器。 我有3个选项:1 – 将视图控制器embedded到uipageviewcontroller中2 – 将视图控制器embedded到uiscrollview中3 – 使用由uisegulatedcontroller控制的容器 – 隐藏属性为真或假…每个视图控制器都使用collectionviews来显示已下载的照片从远程服务器asynchronous。 使用3,来自所有视图控制器的照片,同时加载,所以,这不是我想的一个好的解决scheme。 哪一个是在这种情况下select的最佳解决scheme?
我在网上find了这个代码并进行了testing。 它的工作,但它在无限循环。 我看到一些关于创build页面索引的新funcpost。 链接到网站我find了代码: http : //samwize.com/2015/10/13/how-to-create-uipageviewcontroller-in-storyboard-in-container-view/ 任何人愿意编辑代码,以便循环结束? import UIKit class MyPageViewController: UIPageViewController, UIPageViewControllerDataSource, UIPageViewControllerDelegate { var pages = [UIViewController]() override func viewDidLoad() { super.viewDidLoad() self.delegate = self self.dataSource = self let page1: UIViewController! = storyboard?.instantiateViewControllerWithIdentifier("page1") let page2: UIViewController! = storyboard?.instantiateViewControllerWithIdentifier("page2") let page3: UIViewController! = storyboard?.instantiateViewControllerWithIdentifier("page3") pages.append(page1) pages.append(page2) pages.append(page3) setViewControllers([page2], direction: UIPageViewControllerNavigationDirection.Forward, animated: false, completion: […]
我的应用程序是在iPad上运行的标签栏应用程序。 其中一个选项卡包含一个UIPageViewController,我在这里按照教程实现了很多 : 以编程方式实现UIPageViewController – 没有故事板 。 一切都很好,包括旋转。 但是有一个问题 – 如果我转到包含页面视图控制器的选项卡,则导航到不同的选项卡并更改方向。 然后导航返回到包含页面视图控制器的选项卡,现在显示不正确。 再次旋转设备,页面视图控制器可见,修复的东西。 我想这是因为 pageViewController:spineLocationForInterfaceOrientation: 不被调用,而该选项卡不可见。 任何想法如何弥补这一点?
当用户旋转他们的设备时, UIPageViewController从显示的任何页面淡出到第一页。 这真的很烦人,特别是当用户多页进入文档。 它只发生在iOS 6。 当用户旋转他们的设备时, spineLocationForInterfaceOrientation被调用,这可能与问题有关。 – (UIPageViewControllerSpineLocation)pageViewController:(UIPageViewController *)pageViewController spineLocationForInterfaceOrientation:(UIInterfaceOrientation)orientation { return UIPageViewControllerSpineLocationMin; } 我总是希望脊椎在左边。 你有什么想法是什么导致UIPageViewController重置? 我在这里发现了一个错误报告,但我一直无法在网上find任何其他信息,让我觉得我做错了什么。
每当我滑动页面控制器,并同时点击相反方向的底部的UIPageControl ,当前正在显示的页面和pageControl中的页码将不同步。 有没有人有这个奇怪的问题,并解决了它? 让我知道如果你需要任何额外的信息。
我正在寻找一种方法来取代UIPageViewController本地UIPageViewController水平分页。 到目前为止我做了以下几点: let layout = UICollectionViewFlowLayout() layout.scrollDirection = .horizontal layout.itemSize = collectionView.frame.size layout.minimumLineSpacing = 0 layout.minimumInteritemSpacing = 10 collectionView.setCollectionViewLayout(layout, animated: false) collectionView.isPagingEnabled = true collectionView.alwaysBounceVertical = false 这工作正常,我得到一个水平分页效果。 现在我想在页面之间添加水平空间(就像你将UIPageViewControllerOptionInterPageSpacingKey上的UIPageViewController ) 到目前为止,我不能罚款的方式来添加空间而不损坏分页效果。 即时通讯寻找与UIPageViewController相同的行为:单元格应填充整个屏幕宽度,单元格之间的空间应该只在切换页面时可见。
在故事板中我有一个UIPageViewController ,这是我的代码 class ReservedTimesViewController: UIPageViewController { override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } extension ReservedTimesViewController: UIPageViewControllerDataSource { func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? { let controller = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ReservedTimesTableViewController") print(controller) return controller } func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? { […]
我有一个显示7页的UIPageViewController。 我注意到这个奇怪的问题:每当你滑动页面控制器,并点击底部的Uipagecontrol,在滑动的相反方向,同时当前正在显示的页面和页面控件中的页码将不同步。 有没有人有这个奇怪的问题,并解决了它。 请帮帮我。 请让我知道如果你需要任何额外的信息。
我尝试在UIPageViewController显示照片。 首先,我在集合视图中显示我的照片,然后点击一张照片进入页面视图。 当我在页面视图,但是,如果我滚动当前照片(向右或向左),我发现pageViewController:viewControllerBeforeViewController和pageViewController:viewControllerAfterViewController方法将被调用(通过调用NSLog我发现它)。 这两种方法中只有一种应该被调用一次? 我很困惑,并有很大的麻烦更新我的photoNumber显示我想要的照片。 这是我的页面查看代码: #import "PhotoPageViewController.h" #import "PhotoViewController.h" @interface PhotoPageViewController () @property (nonatomic)NSInteger previousPhotoNumber; @end @implementation PhotoPageViewController – (void)viewDidLoad { [super viewDidLoad]; self.dataSource = self; self.delegate = self; self.numberOfPhotosInCurrentAlbum = [Photo numberOfPhotosInAlbumWithName:self.albumName inManagedObjectContext:self.context]; PhotoViewController *currentPhotoViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PhotoContentViewController"]; currentPhotoViewController.photoNumber = self.currentPhotoNumber; currentPhotoViewController.albumName = self.albumName; currentPhotoViewController.context = self.context; currentPhotoViewController.ppvc = self; currentPhotoViewController.numberOfPhotosInCurrentAlbum =self.numberOfPhotosInCurrentAlbum; [self […]
我的UIPageViewController根本不工作。 我想要做的是在UIPageViewController内切换2视图控制器。 我已经在这里遵循指导,但失败。 使用UIPageViewController和swift和多视图控制器 。 第一个视图控制器出现成功,但是当我试图刷到第二个视图控制器它抛出这个错误信息。 我已经正确设置了所有标识符。 fatal error: unexpectedly found nil while unwrapping an Optional value 这是因为这里 func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? { let identifier = viewController.restorationIdentifier let index = self.identifiers.indexOfObject(identifier!) // error message here //if the index is 0, return nil since we dont want a view controller before the […]