标签: uipageviewcontroller

在页面视图控制器中以编程方式使用故事板中的View Controller

我有一个带故事板的应用程序.我正在使用多个带有segue的View Controller,可根据所选项目从表格视图中进行选择.我想要一个页面视图控制器,其中页面将是故事板中的一个或多个视图控制器,甚至重复它们.我正在尝试这样init的页面视图控制器:.... self.dataSource = self;

UIViewController *initialViewController =[self viewControllerAtIndex:current];
NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];


[self setViewControllers:viewControllers direction:UIPageViewControllerNavigationOrientationHorizontal  animated:NO completion:nil];
....

- (UIViewController *)viewControllerAtIndex:(NSUInteger)index
{
if ((descriptions.count == 0) ||
    (index >= descriptions.count)) {
    return nil;
}

current=index;

// Create a new view controller and pass suitable data.
NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0];

Description *description=[DBCompany getDescriptionById:language descriptionId:[[descriptions objectAtIndex:index] integerValue]];

UIViewController *viewController=nil;
if(description.frame==100){
    viewController=[[Company100ViewController alloc] init];
    ((Company100ViewController*)viewController).companyId = companyId;
}
return viewController;
}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController …
Run Code Online (Sandbox Code Playgroud)

objective-c ios uipageviewcontroller

22
推荐指数
2
解决办法
3万
查看次数

点击状态栏时,UIPageViewController可防止我的表格视图滚动到顶部

我在发布这个问题之前搜索过,但找不到任何东西.

我有一个很大的问题.我有一个滚动类型UIPageViewController作为我的应用程序的基础,有3个视图控制器.

其中一个视图控制器(listTableView)具有表视图和搜索显示控制器.

问题是,当像状态表视图一样点击状态栏时,我无法滚动到表格视图的顶部.我相信UIPageViewController正在干扰这个,但我不知道如何修复它,但我知道我需要让我的应用程序不会感到破碎.

我感谢任何提供的帮助.

我知道有人会要求代码,即使在这种情况下它是无关紧要的,但这里是为了创建UIPageViewController:

#import "MainViewController.h"

@interface MainViewController ()

@property (nonatomic, strong) UIPageViewController *pageViewController;
@property (nonatomic, strong) NSArray *contentViewControllers;

@end

@implementation MainViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageView"];
    self.pageViewController.dataSource = self;

    UIViewController *settings = [self.storyboard instantiateViewControllerWithIdentifier:@"Settings"];

    UIViewController *listTableView = [self.storyboard instantiateViewControllerWithIdentifier:@"List"];

    UIViewController *first = [self.storyboard instantiateViewControllerWithIdentifier:@"First"];

    self.contentViewControllers = [NSArray arrayWithObjects:settings,listTableView,first,nil];

    [self.pageViewController setViewControllers:@[first] direction:UIPageViewControllerNavigationDirectionReverse animated:NO completion:nil];

    [self addChildViewController:self.pageViewController];
    [self.view addSubview:self.pageViewController.view];
    [self.pageViewController didMoveToParentViewController:self];

    self.view.backgroundColor = [UIColor colorWithRed:(248.0/255.0) green:(248.0/255.0) blue:(248.0/255.0) alpha:1.0];
}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
  viewControllerBeforeViewController:(UIViewController *)viewController …
Run Code Online (Sandbox Code Playgroud)

objective-c uitableview uisearchdisplaycontroller ios uipageviewcontroller

21
推荐指数
1
解决办法
5398
查看次数

我可以禁用UIPageViewController的页面边框手势识别器吗?刷卡一个?

我看到我可以删除所有UIPageViewController手势,但是如果我只想删除边缘上的点按手势呢?并保持滑动手势?这可能吗?

谢谢

iphone ipad uigesturerecognizer uipageviewcontroller

20
推荐指数
1
解决办法
6936
查看次数

iOS6中的UIPageViewController

在iOS6中的方法viewControllerAfterViewControllerviewControllerBeforeViewController如果我返回nil(当我在第一页或最后一页时阻止页面导航)应用程序崩溃时出现此异常:

'提供的视图控制器数量(0)与请求的转换所需的数量(1)不匹配

在iOS5中,一切都很好.

iphone objective-c ios uipageviewcontroller

20
推荐指数
3
解决办法
8924
查看次数

UIPageViewController在内存不足时翻转过快时崩溃

由于Xcode的UIPageViewController模板缓存了所有页面数据,我遇到了一些内存问题,因此我将其更改为动态加载页面,所以现在当我的应用程序收到内存不足警告时,它会释放内存以便页面不显示,但如果用户通过点击屏幕边缘快速翻阅页面,它仍然会崩溃.我猜这是因为当调用didReceiveMemoryWarning时,它无法足够快地释放内存.如果用户缓慢翻转,它可以正常工作.我限制了用户翻页的速度,但它仍然会发生.我希望每次翻页时都能释放内存,而不必等待低内存警告.我正在使用ARC.有没有办法做到这一点?或者我还能做些什么来防止这种情况发生?谢谢.

编辑:

(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
    NSUInteger index = [self indexOfViewController:(SinglePageViewControllerSuperclass *)viewController];
    if ((index == 0) || (index == NSNotFound)) {
        return nil;
    }

    index--;
    return [self viewControllerAtIndex:index];
} 

(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{
    NSUInteger index = [self indexOfViewController:(SinglePageViewControllerSuperclass *)viewController];
    if (index == NSNotFound || index == MAX_PAGE_INDEX) {
        return nil;
    }

    return [self viewControllerAtIndex:++index];
}
Run Code Online (Sandbox Code Playgroud)

ios automatic-ref-counting uipageviewcontroller

19
推荐指数
1
解决办法
9453
查看次数

更改UIPageViewController自己的PageController关于点的颜色

嘿我正在使用UIPageViewController控制我在哪个页面和滚动.我知道只需添加以下两个函数就可以显示页面控制器.

- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController

- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController
Run Code Online (Sandbox Code Playgroud)

我想知道的是,是否可以更改页面控制器的颜色,所以在我使用的背景上点更明显?

我知道常规页面控制器具有以下属性:

@property(nonatomic,retain) UIColor *currentPageIndicatorTintColor
@property(nonatomic,retain) UIColor *pageIndicatorTintColor
Run Code Online (Sandbox Code Playgroud)

但是,我无法弄清楚如何从UIPageViewController访问这些属性或页面控制器.

如果有人刚才说如何更改属性,这可能会有所帮助?

xcode properties objective-c uipageviewcontroller

19
推荐指数
2
解决办法
1万
查看次数

UIPageViewController究竟是什么?

iOS文档说我们可以一次呈现一页或两页,具体取决于脊柱的位置或位置以及双面状态......
但是,我无法理解" UIPageViewController中究竟是什么脊柱? "在此输入图像描述

ios uipageviewcontroller ios7

19
推荐指数
1
解决办法
5743
查看次数

我怎么知道UIPageViewController是否向前翻转或反转?

我有一个UIPageViewController,我只是无法弄清楚如何知道用户转向页面的方向,以便我可以适当地设置页数.

谢谢Shani

ios uipageviewcontroller

18
推荐指数
3
解决办法
2万
查看次数

UIPageViewController转换'不平衡调用开始/结束外观转换'

当我浏览UIPageViewController速度超过其过渡动画时,我得到了' Unbalanced calls to begin/end appearance transitions for <MyDataViewController>',并且在我尝试翻页之前,横向中的两个视图中的一个未显示.

有人有想法解决这个bug吗?

transition ios uipageviewcontroller

18
推荐指数
4
解决办法
1万
查看次数

在UIPageViewController屏幕底部添加点

我已经实现了UIPageViewController的数据源方法,但仍然没有在我的iOS应用程序底部获得点.任何人都有任何解决方案,使我的应用程序上出现点?

ios uipageviewcontroller swift

18
推荐指数
6
解决办法
2万
查看次数