viewDidLoad is things you have to do once, you should do things that you only have to do once in viewDidLoad – like setting your UILabel texts. viewWillAppear is called just before the view is displayed . This happens always after viewDidLoad and is called every time the view is displayed.