UIPageViewController z różnymi ViewController, właściwy sposób?

Zasadniczo, mam kontroler widoku tabeli i normalny kontroler widoku. Chcę, aby można było przesuwać między kontrolerami widoku, tak jak na ekranie głównym aplikacji (oczywisty ten sam kontroler widoku).

Ale odkrywam, żeUIpageviewcontroller jest używany w usaully, gdy masz wiele widoków tego samego typuviewcontroller na przykład przesuwając między zdjęciami, możesz po prostu ustawić indeks w klasie i tablicę obrazów odnoszących się do indeksu i ustawić go w ten sposób.

Ale staram się uzyskać różne kontrolery widoku w tym zestawie. W tej chwili są dwa, ale na pewno przekroczą 4.

JestUIPageViewController właściwy sposób ustawienia lub coś innego.

EDYCJA: Kod dodany poniżej

    //
//  ViewController.m
//  testb
//
#import "MainPostController.h"
#import "MainTableViewController.h"
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController
@synthesize pageViewController;
@synthesize indexValue = _indexValue;

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.indexValue= 1;
    NSLog(@"main intitated");

    // Do any additional setup after loading the view, typically from a nib.
    self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageViewController"];
    self.pageViewController.dataSource = self;

    MainTableViewController *tvc = [self.storyboard instantiateViewControllerWithIdentifier:@"MainTableViewController"];
    MainPostController *pvc;
    NSArray *viewcontrollers =[NSArray arrayWithObjects:tvc, pvc, nil];

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

    self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 30);

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

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}




-(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
    if (self.indexValue == 1) {
        MainPostController *pvc = [self.storyboard instantiateViewControllerWithIdentifier:@"MainPostController"];
        self.indexValue = 0 ;
        return  pvc;

    }
    else return nil;




}

-(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{

    if (self.indexValue == 0) {
        MainTableViewController *tvc = [self.storyboard instantiateViewControllerWithIdentifier:@"MainTableViewController"];
        self.indexValue = 1;
        return tvc;

    }
    else return nil;


}
@end

Chcę, aby widok początkowy był kontrolerem widoku tabeli (tvc) i chcę, aby kontroler widoku Post (pcv) znajdował się po jego lewej stronie. Mogę go załadować i przesuwać między nimi łatwo, ale czasami mogę przesuwać dalej niż granice, więc jeśli zacznę od tvc -> pvc -> tvc, to mogę przejść dalej, przesuwając w prawo do tego samego tvc, a następnie granica została osiągnięta lub przejdź w drugą stronę tvc -> pvc -> tvc -> pvc -> pvc przesuwając w lewo, aby przejść do ostatniego przejścia. Granice zostały osiągnięte w końcu. Po uruchomieniu aplikacji w TVC nie mogę przejść do przodu strony (co powinno się zdarzyć) i jeśli idę tvc -> pvc i spróbuję przejść na stronę po lewej stronie, to mi nie pozwoli (co powinno się stać )

Dzięki

questionAnswers(4)

yourAnswerToTheQuestion