【问题标题】:how i remove interaction in PageViewcontroller?我如何删除 PageViewcontroller 中的交互?
【发布时间】:2016-02-25 14:54:29
【问题描述】:

具有点的视图(绿色 UIView) 我不需要离开用户使用拖动和移动,或者可以将点放在图像的视图中。有人可以帮助我解决这两种解决方案之一吗?

IMAGE APP

代码:

-(void) initWithLit {

    _pageTitles = @[@"Over 200 Tips and Tricks", @"Felipe"];
    _pageImages = @[@"page1.png",@"page2.png"];

    // Create page view controller
    self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageViewController"];
    self.pageViewController.dataSource = self;

    PageContentViewController *startingViewController = [self viewControllerAtIndex:0];
    NSArray *viewControllers = @[startingViewController];

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

    // Change the size of page view controller
    self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);

    [self addChildViewController:_pageViewController];
    [self.view addSubview:_pageViewController.view];
    //[self.pageViewController didMoveToParentViewController:self];
    self.pageViewController.view.backgroundColor = [UIColor greenColor];
    navigationController = [[UINavigationController alloc] initWithRootViewController:self.pageViewController];

    [self.mm_drawerController setCenterViewController:navigationController ];
    [self.mm_drawerController closeDrawerAnimated:YES completion:nil];
    navigationController.navigationBarHidden = true;    
}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
    NSUInteger index = ((PageContentViewController*) viewController).pageIndex;

    if ((index == 0) || (index == NSNotFound)) {
        return nil;
    }

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

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{
    NSUInteger index = ((PageContentViewController*) viewController).pageIndex;

    if (index == NSNotFound) {
        return nil;
    }

    index++;
    if (index == [self.pageTitles count]) {
        return nil;
    }
    return [self viewControllerAtIndex:index];
}

- (PageContentViewController *)viewControllerAtIndex:(NSUInteger)index
{
    if (([self.pageTitles count] == 0) || (index >= [self.pageTitles count])) {
        return nil;
    }

    // Create a new view controller and pass suitable data.
    PageContentViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageContentViewController"];
    pageContentViewController.imageFile = self.pageImages[index];
    pageContentViewController.titleText = self.pageTitles[index];
    pageContentViewController.btnOK.hidden = FALSE;


    pageContentViewController.pageIndex = index;

    return pageContentViewController;
}

- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController
{
    return [self.pageTitles count];
}

- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController
{
    return 0;
}

【问题讨论】:

    标签: ios objective-c iphone uiview uipageviewcontroller


    【解决方案1】:

    我猜,你打算建立一个教程页面。如果你想添加动态点,你只需要添加 UIPageControl 元素,你可以在这里查看:https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/UIPageControl_Class/index.html

    它易于使用。你可以找到很多例子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-20
      • 2022-01-04
      • 1970-01-01
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2012-03-19
      相关资源
      最近更新 更多