2015-10-06 4 views
0

Пожалуйста, помогите мне в моем проекте. Я использую IIViewDeckController, но ее не работает при нажатии на контроллерIIViewDeckController не работает при нажатии навигационным контроллером

вид Heres иерархии:

ViewController (Push) ---->IIViewDeckController (с левым и CENTERVIEW).

Вот мой код при инициализации IIViewDeckController:

- (IIViewDeckController*)generateControllerStack{ 

self.navigationView = [[NavigationViewController alloc] initWithNibName:@"NavigationViewController" bundle:nil]; 
self.profileView = [[ProfileViewController alloc] initWithNibName:@"ProfileViewController" bundle:nil]; 

UINavigationController* navC = [[UINavigationController alloc] initWithRootViewController:self.profileView]; 


IIViewDeckController *deckView = [[IIViewDeckController alloc] initWithCenterViewController:navC leftViewController:self.navigationView rightViewController:nil]; 

deckView.leftSize = 50; 

[deckView disablePanOverViewsOfClass:NSClassFromString(@"_UITableViewHeaderFooterContentView")]; 

return deckView; 

}

тогда это мой, когда я выдвигаю IIViewDeckController с помощью другого ViewController

- (IBAction)signInAction:(id)sender { 

IIViewDeckController *deckView = [[UIManager sharedItems] generateControllerStack]; 

[self.navigationController pushViewController:deckView animated:YES]; 

}

код

Спасибо большое, ребята :)

enter image description here

, когда я нажал знак, в котором я буду толкать мой iiviewdeckcontroller с левой и центральной точки зрения это выглядит

enter image description here

+0

Показать код, что вы сделали и в чем проблема. –

+0

Привет! Я следую тем же инструкциям, данным в документах, я просто добавляю контроллер представления в качестве домашней страницы. когда я нажму кнопку, он подтолкнет iiviewdeckcontroller левой и центральной. Похоже, что centerview не отображается. – user3205472

+0

Лучше показать его с помощью снимка экрана или кодирования, а не текстового ... –

ответ

0

Вы можете сделать так.

//Appdelegate.m 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
// Override point for customization after application launch. 
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" 
                 bundle:nil]; 
UINavigationController *navigation = [[UINavigationController alloc]initWithRootViewController:self.viewController]; 
self.window.rootViewController = navigation; 
[self.window makeKeyAndVisible]; 
return YES; 

} 

импорт IIViewDeckController.h в ViewController.h затем

- (IBAction)GoToNext:(id)sender 
{ 
     IIViewDeckController *objIIVC = [self.storyboard instantiateViewControllerWithIdentifier:@"Your VC's Identifier"]; 
     [self.navigationController pushViewController:objIIVC animated:YES]; 

} 
0

Вы создали это, как это? Я использую его как контроллер корневого представления. и он работает нормально

UINavigationController* navController=(UINavigationController*)[[UIStoryboard storyboardWithName:@"Main" bundle: nil] instantiateViewControllerWithIdentifier:@"HomeViewController"]; 

    SlideMenuViewController* slide=[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"SlideMenuViewController"];/


    IIViewDeckController* deckController = [[IIViewDeckController alloc] initWithCenterViewController:navController 
                        leftViewController:slide 
                        rightViewController:nil 
                        topViewController:nil 
                        bottomViewController:nil]; 

    float leftSize=self.window.frame.size.width - (88*self.window.frame.size.width)/320; 
    deckController.panningMode = IIViewDeckFullViewPanning; 
    deckController.leftSize =leftSize; 
+0

Привет, я не использую раскадровки. Я использую файлы nib :) – user3205472

+0

IIViewDeckController не является моим rootviewcontroller. Я использую другой контроллер представления и устанавливаю iiviewcontroller как childviewcontroller – user3205472

+0

Можете ли вы, пожалуйста, обновить выше строки кода новыми? – zaheer

0

Вот мой код

- (IIViewDeckController *) generateControllerStack {

self.navigationView = [[NavigationViewController alloc] initWithNibName:@"NavigationViewController" bundle:nil]; 


UIViewController *centerController = [[ProfileViewController alloc] initWithNibName:@"ProfileViewController" bundle:nil]; 
centerController = [[UINavigationController alloc] initWithRootViewController:centerController]; 


self.viewDeck = [[IIViewDeckController alloc] initWithCenterViewController:centerController leftViewController:self.navigationView rightViewController:nil topViewController:nil bottomViewController:nil]; 

self.viewDeck.leftSize = 50; 

[self.viewDeck disablePanOverViewsOfClass:NSClassFromString(@"_UITableViewHeaderFooterContentView")]; 

return self.viewDeck; 

}

+0

Проблема в 4-м строчке, измените это на «UINavigationController * navC = [[UINavigationController alloc] initWithRootViewController: centerController];" – zaheer

+0

его все еще не работает :(Я не могу перейти к моему проекту из-за этой проблемы :( – user3205472

Смежные вопросы