[ios] تعطيل عنصر زر شريط التنقل



Answers

الائتمان لفيجاي أبل- Dev.blogspo لهذه الإجابة.

self.navigationItem.leftBarButtonItem.enabled = NO;
self.navigationItem.rightBarButtonItem.enabled = NO;

يبدو هذا تلقائيا إلى الرمادي من الأزرار وأيضا تعطيل لهم.

ملاحظة: الافتراض في السؤال أن self.navigationController.navigationItem.rightBarButtonItem.enabled = نو؛ يبدو أن الأعمال خاطئة، بعد تريالينغ في بلدي رمز وجدت أنه ليس له أي تأثير.

مرة أخرى بفضل فيجاي مشيرا إلى أنه قد يكون من الأفضل استخدام:

self.navigationItem.hidesBackButton = YES;

كما أبل لا يحب تعطيل زر العودة.

شخصيا أنا ذاهب لتعطيل الزر الأيمن العلوي وإخفاء الزر مرة أخرى لوقف المستخدم من الضغط عليها، ثم تمكينها مرة أخرى عندما اخترت.

رابط إلى السؤال هنا

تم نشر هذه الإجابة للتأكد من اكتمالها وبالتالي لا يحتاج المستخدمون في المستقبل إلى مواصلة البحث في هذه الصفحة.

Question

عند تعيين زر شريط التنقل الأيمن للمعوقين، فإنه لا يغير لونه للإشارة إلى حالة تعطيله للمستخدم.

يبقى "أبرز"، غير الرمادي.

لقد قمت بإعداد الزر في ستوريبوارد كما يلي:

self.navigationController.navigationItem.rightBarButtonItem.enabled = NO;

ماذا أحتاج إلى القيام به لتغيير حالة زر بصريا أيضا؟

شكرا لكم!




يمكنك محاولة تغيير لون التلوين يدويا مثل هذا:

    self.navigationItem.rightBarButtonItem.tintColor = [UIColor grayColor];

هذا هو رمز لم تختبر، ولكن يجب أن تعمل. أيضا، لا ننسى لتغييره مرة أخرى عندما يتم تمكين مرة أخرى.




Links