ios - ন্যাভিগেশন বার বার, রঙিন, এবং শিরোনাম টেক্সট রঙ আইওএস 8




swift ios8 (12)

সুইফ্টের মাধ্যমে সুইফ্ট করুন 3.2 (সুইফ্ট 4.0 নয়)

    self.navigationController?.navigationItem.largeTitleDisplayMode = .always
    self.navigationController?.navigationBar.prefersLargeTitles = true
    self.navigationController?.navigationBar.largeTitleTextAttributes = [NSForegroundColorAttributeName: UIColor.white]

    // unconfirmed but I assume this works:
    self.navigationController?.navigationBar.barTintColor = UIColor.white
    self.navigationController?.navigationBar.barStyle = UIBarStyle.black

স্ট্যাটাস বারের ব্যাকগ্রাউন্ড টেক্সট এখনও কালো। আমি সাদা রং কিভাবে পরিবর্তন করতে পারি?

// io8, swift, Xcode 6.0.1 
override func viewDidLoad() {
    super.viewDidLoad()
    self.navigationController?.navigationBar.barTintColor = UIColor.blackColor()
    self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.orangeColor()]

}


// সুইফ্ট 4

self.navigationController?.navigationBar.titleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.white]

আমি অ্যালেক্স এর উত্তর পছন্দ করি। আপনি যদি ViewController চেষ্টা করার জন্য দ্রুত কিছু চান তবে নিশ্চিত করুন যে আপনি ব্যবহার করেন

viewWillAppear()
override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)
    var nav = self.navigationController?.navigationBar
    nav?.barStyle = UIBarStyle.Black
    nav?.tintColor = UIColor.white
    nav?.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.orange]
    //nav?.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.orange] // swift 4.2
}


দ্রুত 4 সঙ্গে আপডেট

override func viewDidLoad() {
    super.viewDidLoad()
        self.navigationController?.navigationBar.tintColor = UIColor.blue
        self.navigationController?.navigationBar.barStyle = UIBarStyle.black
}

সুইফট 4.1

দেখার জন্য একটি func যোগ করুন

override func viewDidLoad() {
  super.viewDidLoad()

  setup()
}   

setup() ফাংশন যোগ করুন:

func setup() {

        navigationController?.navigationBar.prefersLargeTitles = true
        navigationController?.navigationBar.barStyle = .blackOpaque
        navigationItem.title = "YOUR_TITLE_HERE"
        navigationController?.navigationBar.barTintColor = .black
        let attributes = [NSAttributedStringKey.foregroundColor: UIColor.white]
        navigationController?.navigationBar.largeTitleTextAttributes = attributes
    }

সুইফ্ট 3 এ এটি কাজ করে:

navigationController?.navigationBar.barTintColor = UIColor.white
navigationController?.navigationBar.titleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.blue]

সুইফ্ট 4.1 এবং এক্সকোড 9.4.1 তে

self.navigationItem.title = "your name"
let textAttributes = [NSAttributedStringKey.foregroundColor:UIColor.white]
navigationController?.navigationBar.titleTextAttributes = textAttributes

সুইফ্ট 4.2

var nav = self.navigationController?.navigationBar
nav?.barStyle = UIBarStyle.Black
nav?.tintColor = UIColor.white
nav?.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.orange]

NavigationBar TitleText জন্য কাস্টম রঙের জন্য, এখানে সুইফ্ট 3 এর জন্য একটি সহজ এবং ছোট কোড:

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

অথবা

navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName :UIColor.white]

AppDelegate.swift ইন application(_:didFinishLaunchingWithOptions:) আমি নিম্নলিখিত রাখুন:

UINavigationBar.appearance().barTintColor = UIColor(red: 234.0/255.0, green: 46.0/255.0, blue: 73.0/255.0, alpha: 1.0)
UINavigationBar.appearance().tintColor = UIColor.white
UINavigationBar.appearance().titleTextAttributes = [NSAttributedStringKey.foregroundColor : UIColor.white]

titleTextAttributes , docs বলে:

আপনি টেক্সট গুণাবলী অভিধানে শিরোনামের জন্য ফন্ট, পাঠ্য রঙ, পাঠ্য ছায়া রঙ এবং পাঠ্য ছায়া অফসেট নির্দিষ্ট করতে পারেন


উদ্দেশ্য-সি-তে কাজ করার জন্য আমার নীচের লাইনগুলিকে আমার কাস্টম ভিউ viewWillAppear এ উইলঅ্যাপিয়ারে রাখতে হবে।

[self.navigationController.navigationBar setBarTintColor:[UIColor whiteColor]];
[self.navigationController.navigationBar setTranslucent:NO];

Swift2.x এর জন্য এই কাজ করে:

self.navigationController?.navigationBar.barTintColor = UIColor.redColor()

Swift3.x এর জন্য এই কাজ করে:

self.navigationController?.navigationBar.barTintColor = UIColor.red

স্টোরিবোর্ডে এই কাজটি করতে (ইন্টারফেস বিল্ডার ইন্সপেক্টর)

IBDesignable , আমরা IBDesignable জন্য ইন্টারফেস বিল্ডার ইন্সপেক্টরকে আরো বিকল্প যোগ করতে এবং স্টোরিবোর্ডে তাদের UINavigationController পারি। প্রথমত, আপনার প্রকল্পে নিম্নলিখিত কোড যোগ করুন।

@IBDesignable extension UINavigationController {
    @IBInspectable var barTintColor: UIColor? {
        set {
            navigationBar.barTintColor = newValue
        }
        get {
            guard  let color = navigationBar.barTintColor else { return nil }
            return color
        }
    }

    @IBInspectable var tintColor: UIColor? {
        set {
            navigationBar.tintColor = newValue
        }
        get {
            guard  let color = navigationBar.tintColor else { return nil }
            return color
        }
    }

    @IBInspectable var titleColor: UIColor? {
        set {
            guard let color = newValue else { return }
            navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: color]
        }
        get {
            return navigationBar.titleTextAttributes?["NSForegroundColorAttributeName"] as? UIColor
        }
    }
}

তারপরে স্টোরিবোর্ডে কেবল UINavigationController এর জন্য বৈশিষ্ট্যগুলি সেট করুন।







uinavigationbar