कोड से UINavigationBar बनाना
प्रोग्रामेटिकली नेविगेशन बार जोड़ने के लिए हम नीचे बताए गए चरणों की एक श्रृंखला से गुजरेंगे। हम इसे अपने व्यू कंट्रोलर के viewWillLayoutSubviews मेथड में करेंगे।
चरण:
- वर्तमान व्यू की चौड़ाई प्राप्त करना।
let width = self.view.frame.width
- हमारे वर्तमान व्यू की चौड़ाई और 44px ऊंचाई के साथ एक नेविगेशन बार बनाना जो नेविगेशन बार की डिफ़ॉल्ट ऊंचाई है।
let navigationBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: width, height: 44))
- नव निर्मित नेविगेशन बार को हमारे व्यू में जोड़ना।
self.view.addSubview(navigationBar)
हम इस उदाहरण को आगे बढ़ाकर अपने व्यू में टाइटल और बटन जोड़ सकते हैं। पूरा परिणाम नीचे दी गई क्लास जैसा दिखना चाहिए।
class ViewController: UIViewController {
override func viewWillLayoutSubviews() {
let width = self.view.frame.width
let navigationBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: width, height: 44))
self.view.addSubview(navigationBar)
let navigationItem = UINavigationItem(title: "Navigation bar")
let doneBtn = UIBarButtonItem(barButtonSystemItem: .done, target: nil, action: #selector(selectorX))
navigationItem.rightBarButtonItem = doneBtn
navigationBar.setItems([navigationItem], animated: false)
}
override func viewDidLoad() {
super.viewDidLoad()
}
@objc func selectorX() { }
}
जब हम इस उदाहरण को निष्पादित करते हैं तो हमारा परिणाम ऐसा दिखना चाहिए:
