अन्य उत्तरों में कुछ भी गलत नहीं है। मैं फॉन्ट सेट करने के लिए सिर्फ स्टोरीबोर्ड संस्करण साझा कर रहा हूं।
1. अपने नेविगेशन नियंत्रक के भीतर अपने नेविगेशन बार का चयन करें
2. गुण निरीक्षक में शीर्षक फ़ॉन्ट बदलें
(नए फ़ॉन्ट को चुनने से पहले आपको नेविगेशन बार के लिए बार टिंट को टॉगल करने की आवश्यकता होगी)
नोट्स (कैविट्स)
सत्यापित है कि यह Xcode 7.1.1+ पर काम करता है। ( नीचे दिए गए नमूने देखें )
- फ़ॉन्ट प्रभावी होने से पहले आपको नेवी बार टिंट को टॉगल करने की आवश्यकता है (Xcode में बग की तरह प्रतीत होता है; आप इसे डिफ़ॉल्ट रूप से स्विच कर सकते हैं और फ़ॉन्ट चिपक जाएगा)
- यदि आप एक सिस्टम फॉन्ट चुनते हैं तो ~ सुनिश्चित करें कि आकार 0.0 नहीं है (अन्यथा नए फॉन्ट को अनदेखा किया जाएगा)
- ऐसा लगता है कि कोई समस्या नहीं के साथ काम करता है जब केवल एक NavBar पदानुक्रम में है। ऐसा प्रतीत होता है कि एक ही ढेर में द्वितीयक नवबंर को नजरअंदाज किया जाता है। (ध्यान दें कि यदि आप मास्टर नेविगेशन नियंत्रक के नेबर को दिखाते हैं तो अन्य सभी कस्टम नेवर सेटिंग्स को अनदेखा कर दिया जाता है)।
गोच्च्स (deux)
इनमें से कुछ को दोहराया जाता है जिसका अर्थ है कि वे ध्यान देने योग्य हैं।
- कभी-कभी स्टोरीबोर्ड xml भ्रष्ट हो जाता है। इसके लिए आपको स्रोत कोड मोड के रूप में स्टोरीबोर्ड में संरचना की समीक्षा करने की आवश्यकता है (स्टोरीबोर्ड फ़ाइल पर राइट क्लिक करें> इस रूप में खोलें ...)
- कुछ मामलों में, उपयोगकर्ता द्वारा निर्धारित रनटाइम विशेषता के साथ जुड़े नेविगेशन इटेम टैग दृश्य नियंत्रक टैग के बजाय दृश्य टैग के एक xml बच्चे के रूप में सेट किया गया था। यदि ऐसा है तो इसे उचित संचालन के लिए टैग के बीच से हटा दें।
- कस्टम फ़ॉन्ट का उपयोग करने के लिए नवबर टिंट को टॉगल करें।
- गतिशील फ़ॉन्ट शैली का उपयोग करते हुए फ़ॉन्ट के आकार पैरामीटर को सत्यापित करें
- दृश्य पदानुक्रम सेटिंग को ओवरराइड करेगा। ऐसा प्रतीत होता है कि प्रति स्टैक एक फ़ॉन्ट संभव है।
परिणाम
नमूने
कस्टम फ़ॉन्ट्स को संभालना
नोट ~ क्रिस वेबसाइट के साथ कोड से एक अच्छा चेकलिस्ट पाया जा सकता है और आप नमूना डाउनलोड परियोजना देख सकते हैं।
यदि आपके पास अपना स्वयं का फ़ॉन्ट है और आप इसे अपने स्टोरीबोर्ड में उपयोग करना चाहते हैं, तो निम्नलिखित एसओ प्रश्न पर उत्तरों का एक सभ्य सेट है । एक उत्तर इन चरणों की पहचान करता है।
- आप कस्टम फ़ॉन्ट फ़ाइल (.ttf, .ttc) प्राप्त करें
- फ़ॉन्ट फ़ाइलों को अपने Xcode प्रोजेक्ट में आयात करें
- एप्लिकेशन-info.plist में, एप्लिकेशन द्वारा प्रदान की गई कुंजी नाम जोड़ें। यह एक सरणी प्रकार है, अपने सभी फ़ॉन्ट फ़ाइल नामों को सरणी में जोड़ें, ध्यान दें: फ़ाइल एक्सटेंशन सहित।
- स्टोरीबोर्ड में, नेविगेशनबार पर एट्रीब्यूट इंस्पेक्टर पर जाएं, फॉन्ट सेलेक्ट एरिया के राइट आइकन बटन पर क्लिक करें। पॉपअप पैनल में, फॉन्ट टू कस्टम चुनें, और आपमें से फॉन्ट नाम का परिवार चुनें।
कस्टम फ़ॉन्ट समाधान
तो Xcode स्वाभाविक रूप से ऐसा लगता है कि यह UINavigationItem पर कस्टम फ़ॉन्ट को संभाल सकता है लेकिन यह सुविधा अभी ठीक से अपडेट नहीं हो रही है (चयनित फ़ॉन्ट को अनदेखा किया गया है)।
इसे हल करने के लिए:
एक तरीका यह है कि स्टोरीबोर्ड का उपयोग करके और कोड की एक पंक्ति को ठीक करने के लिए: पहले व्यू कंट्रोलर को एक UIView (UIButton, UILabel, या कुछ अन्य UIView उपवर्ग जोड़ें) (नेविगेशन आइटम नहीं ... Xcode एक को भी करने की अनुमति नहीं दे रहा है उस)। नियंत्रण जोड़ने के बाद आप स्टोरीबोर्ड में फ़ॉन्ट को संशोधित कर सकते हैं और अपने व्यू कंट्रोलर के आउटलेट के रूप में एक संदर्भ जोड़ सकते हैं। बस उस दृश्य को UINavigationItem.titleView पर असाइन करें। यदि आवश्यक हो तो आप पाठ का नाम भी कोड में सेट कर सकते हैं। रिपोर्टेड बग (23600285)।
@IBOutlet var customFontTitleView: UIButton!
//Sometime later...
self.navigationItem.titleView = customFontTitleView