Я не хочу использовать SWRevealViewController в своем приложении, поэтому я выполняю шаги по данной ссылке "https://www.youtube.com/watch?v=5SUV1YY2yxQ".
Но мое приложение разбивается на этой строке
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
Complier показывает следующую ошибку
завершение приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «*** -[__NSArrayM insertObject:atIndex:]: объект не может быть нулевым».
Пожалуйста, проверьте мой дизайн раскадровки
Ниже приведен мой код для синего фона, где я хочу открыть файл .h контроллера отображения.
#import <UIKit/UIKit.h>
#import "SWRevealViewController.h"
@interface DashboardSixOptionViewController : UIViewController
{
SWRevealViewController *revealViewController;
}
@property (nonatomic,retain) SWRevealViewController *revealViewController;
@end
.м файл
@interface DashboardSixOptionViewController ()
@end
@implementation DashboardSixOptionViewController
@synthesize revealViewController = _revealViewController;
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
NSLog(@"gesture desc::%@",self.revealViewController.panGestureRecognizer);
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
}
-(void)configureView
{
[self.navigationController.navigationBar setTintColor:[UIColor orangeColor]];
CGRect dashboardNavFrame = self.navigationController.navigationBar.bounds;
// dashboardNavFrame.size.height += 5;
self.toolBar = [[UIToolbar alloc] initWithFrame:dashboardNavFrame];
[self.toolBar setAutoresizingMask:UIViewAutoresizingFlexibleWidth];
[self.toolBar setTintColor:[UIColor redColor]];
//disable any back btn
self.toolBar.clearsContextBeforeDrawing = NO;
self.toolBar.clipsToBounds = NO;
[self.toolBar setTag:700];
NSMutableArray *buttons = [[NSMutableArray alloc] init];
UIImage *imgOption;
imgOption = [UIImage imageNamed:@"imgOptionsIOS7.png"];
UIButton *aOptionButton = [UIButton buttonWithType:UIButtonTypeCustom];
// [aOptionButton setEnabled:NO];
aOptionButton.frame = CGRectMake(0, 0, imgOption.size.width, imgOption.size.height);
[aOptionButton setImage:imgOption forState:UIControlStateNormal];
// [aOptionButton addTarget:self action:@selector(showLeftMenu:) forControlEvents:UIControlEventTouchUpInside];
[aOptionButton addTarget:self.revealViewController action:@selector(revealToggle:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *btn = [[UIBarButtonItem alloc] initWithCustomView:aOptionButton];
[btn setTarget:self.revealViewController];
[btn setAction:@selector(revealToggle:)];
[buttons addObject:btn];
[self.toolBar setItems:buttons animated:YES];
[self.navigationController.navigationBar addSubview:self.toolBar];
}
из контроллера представления DashboardSixOptionView программно нажмите программно ниже мой код
DashboardSixOptionView = [mainStoryboard instantiateViewControllerWithIdentifier:@"DashboardStoryBoardWithSixOption"];
DashboardSixOptionView.arrTableViewHreaders = self.arrForMenuOption;
[self.navigationController pushViewController:DashboardSixOptionView animated:YES];
Пожалуйста, помогите мне, почему я получаю сбой.
Спасибо в продвинутом Приянке