Computer >> Máy Tính >  >> Lập trình >> IOS

Làm cách nào để đặt mục tiêu và hành động cho UIBarButtonItem trong thời gian chạy?

Để tạo hành động trên nút thanh tại thời điểm chạy, chúng ta sẽ cần thực hiện một số bước. Trước hết, hãy bắt đầu bằng cách tạo một dự án mới.

Khi bạn đã tạo xong dự án, hãy truy cập trực tiếp vào bảng phân cảnh của dự án đó, chọn ViewController và Nhúng nó vào một bộ điều khiển điều hướng.

Bây giờ, hãy chuyển đến lớp bộ điều khiển Chế độ xem tương ứng và bên trong nó, chúng tôi sẽ thực hiện một số bước sẽ thêm nút vào thanh điều hướng khi chạy.

Tạo một hàm objc sẽ được gọi khi nhấn nút.

@objc func barButtonAction() {
   print("Button pressed")
}

Bây giờ, hãy thêm phương thức viewWillLayoutSubviews vào lớp của bạn.

Đầu tiên, chúng tôi sẽ tạo một nút thanh ngay bây giờ.

let barButton = UIBarButtonItem()

Sau đó, chúng tôi sẽ đặt một số tên cho mã vạch này

barButton.title = "custom"

Bây giờ, chúng tôi sẽ thêm một hành động tùy chỉnh vào mã vạch này và đặt cho nó mục tiêu của chính mình

barButton.action = #selector(barButtonAction)
barButton.target = self

Bây giờ chúng tôi sẽ thêm nút này vào thanh điều hướng của ứng dụng của chúng tôi.

self.navigationItem.setLeftBarButton(barButton, animated: true)

Đây là giao diện của mã hoàn chỉnh bây giờ Khi chúng tôi chạy mã trên trên thiết bị của mình, đây là giao diện của nó.

override func viewWillLayoutSubviews() {
   let barButton = UIBarButtonItem()
   barButton.title = "custom"
   barButton.action = #selector(barButtonAction)
   barButton.target = self
   self.navigationItem.setLeftBarButton(barButton, animated: true) }
   @objc func barButtonAction() {
   print("Button pressed") }

khi chúng tôi nhấn nút trên thanh điều hướng nhiều lần, dưới đây là kết quả được tạo ra.

Làm cách nào để đặt mục tiêu và hành động cho UIBarButtonItem trong thời gian chạy?

Làm cách nào để đặt mục tiêu và hành động cho UIBarButtonItem trong thời gian chạy?