Большинство постов до сих пор были сосредоточены на создании кнопки, и они очень правильные. Следующее отвечает на остальную часть вопроса:
Когда я нажимаю кнопку и отображается второе представление, как мне программно изменить текст кнопки (например, «назад»)?
Самый простой способ, если я правильно понимаю ваши обстоятельства, - это использовать plug-n-play UINavigationBarController. Сначала вы хотите поместить свой второй контроллер представления в стек просмотра:
// In firstViewController.m
self.navigationController = [[UIViewController alloc]initWithNibName:@"secondView" bundle:nil];
[self pushViewController:secondViewController animated:TRUE];
Когда отображается ваш второй контроллер вида, вы должны автоматически получить кнопку возврата в левой части навигационной панели. Если есть необходимость изменить текст этой кнопки назад, вы можете просто сослаться на нее так:
// In secondViewController.m
-(void)ViewWillAppear
{
[self.navigationItem.backBarButtonItem setText:@"GoBack"];
}
Есть также left и rightBarButtonItem (s), которые удобны для более сложной навигации. Вот менее сценарий plug-n-play:
// In secondViewController.h
-(IBAction)goBack; (this should appear as an action in your associated nib file)
// In secondViewController.m
-(void)viewDidLoad
{
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"GoBack" style:UIBarButtonItemStylePlain target:self action:@selector(goBack)];
}
-(IBAction)goBack
{
// logic to be done before going back
[self popViewControllerAnimated:secondViewController animated:TRUE];
}