2010-03-25 60 views
5

Trong viewDidLoad của tôi, tôi thử một cái gì đó như thế nhưng nó không làm việc:Thay đổi vị trí của navigationItem.title


UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10,2,60,14)]; 
label.autoresizingMask = UIViewAutoresisingFlecibleWidth; 
[self.navigationController.navigationBar addSubview:label]; 


Tôi muốn hiển thị một nhãn ở phần bên trái của Navigationbar tôi. Hoặc có thể thay đổi vị trí navigationBar.title

Cảm ơn,

Trả lời

16

Bạn có thể làm thiết xem tiêu đề menu item để UILabel với sự liên kết văn bản trái:

UILabel* lbNavTitle = [[UILabel alloc] initWithFrame:CGRectMake(0,40,320,40)]; 
lbNavTitle.textAlignment = UITextAlignmentLeft; 
lbNavTitle.text = NSLocalizedString(@"Hello World!",@""); 
self.navigationItem.titleView = lbNavTitle; 
[lbNavTitle release]; 

Tạo tiêu đề cách mục của điều này cũng dung nạp với nút trên thanh điều hướng và không trùng lặp chúng.

+0

Điều gì sẽ xảy ra nếu một số người có quyền sử dụngButton? Điều này sẽ không hoạt động đúng không? – Manjunath

+0

tại sao? có vẻ như mục điều hướng tự động co lại chế độ xem tiêu đề của nó nếu nút trái hoặc phải có mặt. Cách tiếp cận này làm việc cho tôi ... – Vladimir

+0

cũng làm việc cho tôi. Hoặc bạn cũng có thể thử [self.navigationcontroller.navigationBar.topItem setTitleView: yourlabel]; – ludo

Các vấn đề liên quan