Hai semua. Saya masih cukup baru dalam pengembangan iPhone, dan saya mengalami sedikit kesulitan untuk mengetahui cara mengubah judul Bilah Navigasi saya. Pada pertanyaan lain di situs ini, seseorang merekomendasikan untuk menggunakan:
viewController.title = @"title text";
tetapi itu tidak berhasil untuk saya ... Apakah saya perlu menambahkan UINavigationController untuk melakukannya? Atau mungkin hanya outlet dari subclass UIViewController saya? Jika membantu, saya mendefinisikan bilah navigasi di IB dan saya mencoba menetapkan judulnya di subkelas UIViewController saya. Ini adalah salah satu hal sederhana yang membuat saya pusing. Menempatkan self.title = @ "teks judul"; masuk viewDidLoad
dan initWithNibName
tidak berhasil juga. Ada yang tahu apa yang terjadi dan bagaimana membuatnya benar?
Terima kasih!
sumber
jika Anda melakukan semuanya dengan kode dalam
viewDidLoad
metode yangUIViewController
Anda hanya harus menambahkanself.title = @"title text";
sesuatu seperti ini:
- (void)viewDidLoad { [super viewDidLoad]; self.title = @"title"; }
Anda juga bisa mencoba
self.navigationItem.title = @"title";
juga periksa apakah navigationItem Anda tidak null dan jika Anda telah menyetel latar belakang kustom ke navigationbar, periksa apakah judulnya disetel tanpa itu.
sumber
Ada satu masalah dengan penggunaan
self.title = @"title";
Jika Anda menggunakan Bilah Navigasi bersama dengan bilah Tab, baris di atas juga mengubah label untuk Item Bilah Tab. Untuk menghindarinya, gunakan apa yang disarankan @testing
self.navigationItem.title = @"MyTitle";
sumber
Jika Anda ingin mengubah judul navbar (bukan judul tombol kembali navbar!) Kode ini akan berfungsi.
self.navigationController.topViewController.title = @"info";
sumber
Jika Anda ingin mengubah judul navBar di dalam pengontrol tabBar, lakukan ini:
-(void)viewDidAppear:(BOOL)animated { self.navigationController.navigationBar.topItem.title = @"myTitle"; }
sumber
Di aplikasi berbasis navigasi saya, saya melakukan ini:
myViewController.navigationItem.title = @"MyTitle";
sumber
Saya memiliki pengontrol navigasi yang terintegrasi dalam TabbarController. Ini berhasil
self.navigationItem.title=@"title";
sumber
Secara default pengontrol navigasi menampilkan judul 'topitem'
jadi dalam metode viewdidload appdelegate Anda, Anda bisa. Saya mengujinya dan berhasil
navController.navigationBar.topItem.title = @"Test";
sumber
UINavigationItem* item = [[UINavigationItem alloc] initWithTitle:@"title text"]; ... [bar pushNavigationItem:item animated:YES]; [item release];
Kode ini berhasil.
sumber
Jika Anda bekerja dengan Storyboards, Anda dapat mengklik controller, beralih ke tab properti, dan mengatur teks judul di sana.
sumber
Saya rasa Anda membutuhkan title dinamis, itulah mengapa Anda tidak mengaturnya di IB.
Dan saya anggap objek viewController Anda adalah yang ditentukan dalam NIB?
Mungkin mencoba mengaturnya ke nilai dummy di IB dan kemudian men-debug metode untuk melihat pengontrol mana yang memiliki nilai dummy - dengan asumsi itu muncul sebagai judul ...
sumber
Dari dalam TableViewController.m Anda:
sumber
Untuk semua Swift-ers Anda di luar sana, ini bekerja dengan sempurna untuk saya. Ini terutama salah satu cara yang lebih singkat untuk menyelesaikan pengaturan judul, juga:
override public func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if segue.identifier == "presentLineItem" { print("Setting Title") var vc = segue.destinationViewController as! LineItemsTableViewController vc.navigationItem.title = "Line Item" } }
sumber