iphone - আইওএস 7 ন্যাভিগেশন বার টেক্সট এবং তীর রঙ




ios objective-c (7)

আপনি যদি শিরোনাম পাঠ্য আকার এবং পাঠ্য রঙ পরিবর্তন করতে চান তবে আপনার দুটি বস্তুর জন্য NSDictionary titleTextAttributes পরিবর্তন করতে হবে:

    self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"Arial" size:13.0],NSFontAttributeName,
                                                                  [UIColor whiteColor], NSForegroundColorAttributeName, 
                                                                  nil];

ন্যাভিগেশন বারের জন্য আমি ব্যাকগ্রাউন্ডটি কালো এবং এর ভিতরে সমস্ত রঙ সাদা হতে চাই।

সুতরাং, আমি এই কোডটি ব্যবহার করেছি:

[[UINavigationBar appearance] setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:
      [UIColor whiteColor],
      NSForegroundColorAttributeName,
      [UIColor whiteColor],
      NSForegroundColorAttributeName,
      [NSValue valueWithUIOffset:UIOffsetMake(0, -1)],
      NSForegroundColorAttributeName,
      [UIFont fontWithName:@"Arial-Bold" size:0.0],
      NSFontAttributeName,
      nil]];

কিন্তু ব্যাক বাটন টেক্সট রঙ , তীর এবং বার বোতাম এখনও ডিফল্ট নীল রঙ আছে
নীচের ইমেজ মত যারা রং পরিবর্তন কিভাবে?


আমি মনে করি পূর্ববর্তী উত্তর সঠিক, একই জিনিস করার আরেকটি উপায়। আমি এটা অন্যদের সাথে এখানে শেয়ার করছি যদি এটি কারো জন্য উপযোগী হয়। Ios7 এ navbar এর জন্য আপনি টেক্সট / শিরোনাম রঙটি পরিবর্তন করতে পারেন:

UIColor *red = [UIColor colorWithRed:254.0f/255.0f green:0.0f/255.0f blue:0.0f/255.0f alpha:1.0];
NSMutableDictionary *navBarTextAttributes = [NSMutableDictionary dictionaryWithCapacity:1];
[navBarTextAttributes setObject:red forKey:NSForegroundColorAttributeName ];
self.navigationController.navigationBar.titleTextAttributes = navBarTextAttributes;

মনে হচ্ছে iOS Settings Accessibility কন্ট্রোলগুলি ন্যাভিগেশন বার বোতামগুলিতে রঙ-অনুযায়ী কাজ করার মতো বেশিরভাগই ওভাররাইড করে। ডিফল্ট অবস্থানগুলিতে আপনার সমস্ত সেটিংস আছে কিনা তা নিশ্চিত করুন (সেট সংকোচন, সাহসী টেক্সট , বোতামের আকার ইত্যাদি সেট করুন) অন্যথায় আপনি কোনও পরিবর্তন দেখতে পাবেন না। একবার আমি এটা করেছি, সব রঙ পরিবর্তন কোড প্রত্যাশিত হিসাবে কাজ শুরু। আপনি তাদের সব বন্ধ করার প্রয়োজন হতে পারে না, কিন্তু আমি এটা আরও অনুসরণ করে না।


UINavigationBar এর কিছু বৈশিষ্ট্য থেকে আচরণ iOS 7 থেকে পরিবর্তিত হয়েছে। আপনি নীচের ছবিতে দেখতে পারেন:

আমি আপনার সাথে ভাগ করতে চাই দুটি সুন্দর লিঙ্ক। আরো বিস্তারিত জানার জন্য আপনি এই লিঙ্কগুলি দিয়ে যেতে পারেন:

  1. আইওএস 7 ইউআই ট্রানজিট গাইড
  2. কিভাবে iOS 7 জন্য আপনার অ্যাপ্লিকেশন আপডেট করুন

barTintColor জন্য অ্যাপল ডকুমেন্টেশন বলেছেন:

এই বর্ণটি ডিফল্ট রূপে রূপান্তরিত করা হয় না যদি না আপনি ট্রান্সপাসেন্ট সম্পত্তিটি NO তে সেট করেন।

কোডের উদাহরণ :

self.navigationController.navigationBar.barTintColor = [UIColor blackColor];
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
[self.navigationController.navigationBar 
 setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}];
self.navigationController.navigationBar.translucent = NO;

সুইফট 3, আইওএস 10

বিশ্বব্যাপী রঙ বরাদ্দ করতে, AppDelegate didFinishLaunchingWithOptions :

let textAttributes = [NSForegroundColorAttributeName:UIColor.white]
UINavigationBar.appearance().titleTextAttributes = textAttributes

সুইফ্ট 4, আইওএস 11

let textAttributes = [NSAttributedStringKey.foregroundColor:UIColor.white]
UINavigationBar.appearance().titleTextAttributes = textAttributes

সুইফ্ট / iOS8

let textAttributes = NSMutableDictionary(capacity:1)
textAttributes.setObject(UIColor.whiteColor(), forKey: NSForegroundColorAttributeName)
navigationController?.navigationBar.titleTextAttributes = textAttributes

[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}];




ios7