البرمجة

تخصيص خط وتعليقات شريط التنقل في Swift

عندما تقوم بإضافة شريط التنقل يدويًا إلى عرضك دون استخدام UINavigationController، يصبح من الضروري تعيين خصائص النص مباشرة على شريط التنقل نفسه بدلاً من القيام بذلك عبر الـ navigation controller. في هذه الحالة، يمكنك استخدام الطريقة التالية لتغيير خصائص النص لعنوان شريط التنقل:

swift
if let navigationBar = self.navigationController?.navigationBar { navigationBar.titleTextAttributes = [ NSAttributedString.Key.font: UIFont(name: "LeagueGothic-Regular", size: 16.0) ?? UIFont.systemFont(ofSize: 16.0), NSAttributedString.Key.foregroundColor: UIColor.white ] }

ومع ذلك، إذا لم يكن لديك UINavigationController وقمت بإضافة شريط التنقل يدويًا، يمكنك الوصول إليه مباشرة عبر متغير navigationBar وتعيين الخصائص مباشرة عليه. يتم ذلك عن طريق الاطلاع على الـ navigation bar الذي أضفته يدوياً وتعيين الخصائص المطلوبة، كما هو موضح في الكود أعلاه.

بالنسبة لتغيير خصائص النص لتعليقات الشريط، يمكنك استخدام خاصية prompt للتعيين المسبق للنص الذي يظهر فوق شريط التنقل. اليك كيفية فعل ذلك:

swift
if let navigationBar = self.navigationController?.navigationBar { navigationBar.topItem?.prompt = "Your Comment Here" navigationBar.topItem?.prompt?.setTextAttributes([ NSAttributedString.Key.font: UIFont(name: "YourCustomFont", size: 14.0) ?? UIFont.systemFont(ofSize: 14.0), NSAttributedString.Key.foregroundColor: UIColor.black ], for: .normal) }

تستخدم الطريقة setTextAttributes لتعيين خصائص النص لتعليقات الشريط. ومن المهم أن تتأكد من استبدال “YourCustomFont” بالاسم الصحيح للخط المخصص الذي تريد استخدامه.

المزيد من المعلومات

بالطبع، دعني أوسع عليك الموضوع.

عندما تقوم بإضافة شريط التنقل يدويًا إلى عرضك، فإنه يصبح من الضروري تعيين خصائص النص مباشرة على شريط التنقل نفسه. يمكنك القيام بذلك باستخدام خاصية titleTextAttributes لـ UINavigationBar. الخطوة الأولى هي الاطلاع على الـ navigation bar ومن ثم تعيين الخصائص المطلوبة كما يلي:

swift
if let navigationBar = self.navigationController?.navigationBar { navigationBar.titleTextAttributes = [ NSAttributedString.Key.font: UIFont(name: "LeagueGothic-Regular", size: 16.0) ?? UIFont.systemFont(ofSize: 16.0), NSAttributedString.Key.foregroundColor: UIColor.white ] }

هذا الكود يتحقق مما إذا كان هناك UINavigationController موجودًا، ثم يعين خصائص النص لـ navigationBar. في حالة وجود UINavigationController، يتم تعيين خصائص النص المطلوبة مباشرة. وإذا لم يكن UINavigationController موجودًا، فإن الكود لن يؤدي أي تغيير.

أما بالنسبة لتغيير خصائص النص لتعليقات الشريط، فيمكنك استخدام الخاصية prompt للتعيين المسبق للنص الذي يظهر فوق شريط التنقل. يمكنك تحقيق ذلك عبر الكود التالي:

swift
if let navigationBar = self.navigationController?.navigationBar { navigationBar.topItem?.prompt = "Your Comment Here" navigationBar.topItem?.prompt?.setTextAttributes([ NSAttributedString.Key.font: UIFont(name: "YourCustomFont", size: 14.0) ?? UIFont.systemFont(ofSize: 14.0), NSAttributedString.Key.foregroundColor: UIColor.black ], for: .normal) }

هذا الكود يستخدم الطريقة setTextAttributes لتعيين خصائص النص لتعليقات الشريط. يجب عليك التأكد من استبدال “YourCustomFont” بالاسم الصحيح للخط المخصص الذي ترغب في استخدامه.

باستخدام الكود المذكور أعلاه، يمكنك بسهولة تخصيص خصائص النص لعنوان شريط التنقل وتعليقات الشريط بدون الحاجة إلى UINavigationController. هذا يتيح لك السيطرة الكاملة على مظهر تطبيقك وتخصيصه بحرية وفقاً لرؤيتك الشخصية.

زر الذهاب إلى الأعلى