Сбой setBackgroundColor, когда loadView реализован для ViewController, используемого для UITabBarController

У меня есть контроллер представления, который используется в appDelegate.m как часть tabBarController (код приведен ниже)

 self.window=[[UIWindow alloc ]initWithFrame:[[UIScreen mainScreen]bounds]];
   UITabBarController *baseTab=[[UITabBarController alloc] init];
   self.feedViewController=[[FeedViewController alloc] init];
self.favViewController=[[FavViewController alloc] init];
    [baseTab.tabBar setTintColor:[UIColor yellowColor] ];
    [baseTab setViewControllers:@[self.feedViewController,self.favViewController]animated:YES];

Код внутри feedViewController размещен ниже, сбой приложения решается, когда я удалил loadView из приведенной ниже реализации.

-(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self=[super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if(self)
    {
        [self setTitle:@"Feed"];


    }
    return  self;
}
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    [self.view setBackgroundColor:[UIColor blueColor]];
}

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

-(void)loadView
{
}

Пожалуйста, помогите мне понять, почему это происходит.

1 ответ

Решение

Вызовите супер метод в представлении загрузки

-(void)loadView { [super loadView]; }

надеюсь, это поможет вам, удачи

Другие вопросы по тегам