Computer >> 컴퓨터 >  >> 프로그램 작성 >> IOS

런타임에 UIBarButtonItem에 대한 대상 및 작업을 설정하는 방법은 무엇입니까?

<시간/>

런타임에 막대 버튼 동작을 생성하려면 몇 단계를 거쳐야 합니다. 우선 새 프로젝트를 만들어 시작하겠습니다.

프로젝트를 생성했으면 바로 스토리보드로 이동하여 ViewController를 선택하고 이를 탐색 컨트롤러에 포함합니다.

이제 해당 View 컨트롤러 클래스로 이동하여 그 내부에서 런타임에 탐색 모음에 버튼을 추가하는 몇 가지 단계를 수행합니다.

버튼을 눌렀을 때 호출되어야 하는 objc 함수를 만듭니다.

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

이제 viewWillLayoutSubviews 메소드를 클래스에 추가하십시오.

먼저, 이제 막대 버튼을 생성하겠습니다.

let barButton = UIBarButtonItem()

그런 다음 이 바코드에 이름을 지정하겠습니다.

barButton.title = "custom"

이제 이 바코드에 사용자 지정 작업을 추가하고 자체 대상을 지정합니다.

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

이제 이 버튼을 애플리케이션의 탐색 모음에 추가하겠습니다.

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

이것이 현재 완전한 코드의 모습입니다. 위의 코드를 우리 기기에서 실행할 때의 모습입니다.

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") }

네비게이션 바의 버튼을 여러 번 누르면 아래와 같은 결과가 나옵니다.

런타임에 UIBarButtonItem에 대한 대상 및 작업을 설정하는 방법은 무엇입니까?

런타임에 UIBarButtonItem에 대한 대상 및 작업을 설정하는 방법은 무엇입니까?