2010-10-12 27 views
5

Tôi có ứng dụng Tab Bar. Ứng dụng có 8 UITabBarItems và Nút khác được thêm tự động. Tôi muốn thay đổi tiêu đề từ Thêm thành nội dung khác.Làm thế nào để thay đổi tiêu đề của nút UITabBarController Thêm?

Tôi đã thử như sau:

[email protected]"Test"; 

Nhưng nó vẫn hiển thị "Khác". Không có lỗi. Không thay đổi.

Làm cách nào để thay đổi văn bản "Khác"?

+0

Tại sao bạn có muốn làm điều đó không? Nó có tiêu đề đó vì một lý do rất tốt. Đừng gây rối với hành vi tiêu chuẩn! – Eiko

+1

vì 'Khác' là từ tiếng Anh. ứng dụng của tôi là ở tiếng Thổ Nhĩ Kỳ. tôi đã thay đổi cài đặt iphone của mình thành tiếng Thổ Nhĩ Kỳ. nhưng nó vẫn hiển thị thêm. tôi đã thấy một số ứng dụng mà tiêu đề của nút Khác nằm trong ngôn ngữ khác. – tester

+0

không ai biết? hoặc là nó không thể thay đổi thêm tiêu đề tabbaritem? – tester

Trả lời

1

Từ các tài liệu:

"Các tiêu đề và hình ảnh của thanh tab hệ thống mục không thể thay đổi."

+1

tôi không nghĩ vậy. tôi đã thấy một số ứng dụng mà chúng có nhiều nút hơn. tôi đã thay đổi hình ảnh nút khác. nhưng tôi không thể thay đổi Tiêu đề. cho hình ảnh: NSArray * array = tabbarController.tabBar.subviews; \t UIBarButtonItem * more = [mảng objectAtIndex: 4]; \t [thêm setImage: [UIImage imageNamed: @ "tabIcon_mais.png"]]; \t [more setTitle: @ "Mais"]; // dòng này không hoạt động – tester

4

Tôi đã gặp sự cố tương tự - chỉ cần chuyển đến tệp Info.plist của bạn và thay đổi khóa "Bản địa hóa khu vực phát triển bản địa" sang ngôn ngữ của bạn. Tiêu đề nút "thêm" tự động thay đổi. Điều này cũng tự động thay đổi một số tiêu đề nút hệ thống khác (ví dụ: nút "chỉnh sửa" trong thanh công cụ tùy chỉnh thứ tự biểu tượng)

+1

Nhưng điều này có cho phép các tiêu đề khác nhau bằng các ngôn ngữ khác nhau không? – Eiko

8

Nhãn dưới nút "Thêm" được bản địa hóa cho bạn dựa trên Locale hiện tại của người dùng như được chỉ định trong Cài đặt. Tuy nhiên, bạn phải khai báo sự hỗ trợ của bạn cho miền địa phương đó trong Info.plist của ứng dụng của bạn.

Thêm khóa CFBundleLocalizations vào Info.plist của ứng dụng và đặt giá trị của nó thành một mảng có giá trị là ngôn ngữ mà bạn muốn ứng dụng tự động bản địa hóa nhãn hệ thống. Ví dụ, nếu bạn muốn để bản địa hoá cho cả tiếng Anh và tiếng Nhật, bạn sẽ thêm các mục sau đây để Info.plist:

<key>CFBundleLocalizations</key> 
<array> 
    <string>en</string> 
    <string>ja</string> 
</array> 
+0

Đây là câu trả lời đúng! Làm việc tuyệt vời, cảm ơn. Nếu Xcode từ chối đặt CFBundleLocalizations (Localizations) thành loại "Array", chỉ cần thay đổi nó bằng cách mở Info.plist bằng tùy chọn "Open As"> "Source Code". Nó chỉ là một lỗi Xcode lạ tôi đoán. – inket

+0

Bạn cũng có thể thường chỉnh sửa Info.plist trực tiếp trong trình soạn thảo văn bản. Trong dự án của tôi, nó là một tập tin XML. – erikprice

+1

Câu trả lời hay, vẫn hoàn hảo trong năm 2015 – vib

1

Hãy thử điều này:

tabBarController.moreNavigationController.navigationBar.topItem.title = @"new title"; 

công trình đối với tôi

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