2010-10-12 13 views
5

मेरे पास एक टैब बार ऐप है। ऐप में 8 UITabBarItems हैं और अधिक बटन स्वचालित रूप से जोड़ा जाता है। मैं शीर्षक को से अधिक से कुछ और बदलना चाहता हूं।UITabBarController को और बटन का शीर्षक कैसे बदलें?

[email protected]"Test"; 

लेकिन यह अभी भी "अधिक" प्रदर्शित करता है:

मैं पहले से ही निम्नलिखित की कोशिश की है। कोई ग़लती नहीं। कोई बदलाव नहीं।

मैं "अधिक" टेक्स्ट को दूसरे में कैसे बदल सकता हूं?

+0

क्यों के लिए

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

काम करता है क्या आप ऐसा करना चाहते हैं? यह एक बहुत अच्छा कारण के लिए शीर्षक है। मानक व्यवहार के साथ गड़बड़ मत करो! – Eiko

+1

क्योंकि 'अधिक' अंग्रेजी शब्द है। मेरा ऐप तुर्की लैंग में है। मैंने अपनी आईफोन सेटिंग्स को तुर्की में बदल दिया। लेकिन यह अभी भी और दिखाता है। मैंने कुछ ऐप्स देखा जो अधिक बटन का शीर्षक diffirent lang में है। – tester

+0

कोई नहीं जानता? या क्या अधिक टैबबारिटम का शीर्षक बदलना असंभव है? – tester

उत्तर

1

प्रलेखन से: "। शीर्षक और छवि प्रणाली टैब बार के आइटम बदला नहीं जा सकता"

+1

मुझे ऐसा नहीं लगता है। मैंने कुछ ऐप देखा कि उनके बटन शीर्षक अलग हैं। मैं पहले से ही अधिक बटन छवि बदल दिया है। लेकिन मैं शीर्षक नहीं बदल सकता। छवि के लिए: NSArray * array = tabbarController.tabBar.subviews; \t UIBarButtonItem * अधिक = [array objectAtIndex: 4]; \t [अधिक सेट छवि: [UIImage imageNamed: @ "tabIcon_mais.png"]]; \t [अधिक सेटटाइट: @ "माईस"]; // यह लाइन – tester

4

मुझे एक ही समस्या थी - बस अपनी Info.plist फ़ाइल पर जाएं, और अपनी भाषा में "स्थानीयकरण मूल विकास क्षेत्र" कुंजी बदलें। "अधिक" बटन शीर्षक स्वचालित रूप से बदल जाता है। यह कुछ अन्य सिस्टम बटन शीर्षकों को भी स्वतः बदलता है (उदाहरण के लिए आइकन ऑर्डर कस्टमाइज़ेशन टूलबार में "एडिट" बटन)

+1

काम नहीं करती है, लेकिन क्या यह अलग-अलग भाषाओं में अलग-अलग खिताबों की अनुमति देगी? – Eiko

8

"अधिक" बटन के नीचे लेबल आपके लिए निर्दिष्ट उपयोगकर्ता के वर्तमान लोकेल के आधार पर आपके लिए स्थानीयकृत है सेटिंग्स। हालांकि, आपको अपने ऐप की Info.plist में उस लोकेल के लिए अपना समर्थन घोषित करना होगा।

CFBundleLocalizations अपने एप्लिकेशन की Info.plist पर कुंजी जोड़ें और उसके मान को उस सरणी पर सेट करें जिसका मान लोकल है जिसके लिए आप ऐप को स्वचालित रूप से सिस्टम लेबल को स्थानीयकृत करना चाहते हैं। उदाहरण के लिए, यदि आप दोनों अंग्रेजी और जापानी के लिए स्थानीय बनाना चाहते हैं, तो आपको निम्न प्रविष्टि Info.plist बढ़ेगी:

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

यह सही जवाब है! महान काम किया, धन्यवाद। यदि एक्सकोड "एरे" प्रकार के लिए सीएफबंडल लोकलाइजेशन (लोकलाइजेशन) सेट करने से इंकार कर देता है, तो बस "ओपन एज़"> "सोर्स कोड" विकल्प के साथ Info.plist खोलकर इसे बदलें। यह मुझे लगता है कि यह एक अजीब एक्सकोड बग है। – inket

+0

आप आमतौर पर केवल एक टेक्स्ट एडिटर में Info.plist को संपादित कर सकते हैं। मेरी परियोजना में यह एक एक्सएमएल फ़ाइल है। – erikprice

+1

ग्रेट उत्तर, 2015 में अभी भी सही – vib

1

इस प्रयास करें: मुझे

संबंधित मुद्दे