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

iOS의 배열에서 프로그래밍 방식으로 선택기를 만드는 방법은 무엇입니까?

<시간/>

선택기 보기는 사용자가 항목을 선택하기 위해 조작하는 하나 이상의 휠을 표시합니다. 구성 요소라고 하는 각 휠에는 선택 가능한 항목을 나타내는 일련의 인덱싱된 행이 있습니다.

UIPicker는 중요한 구성 요소 중 하나이며 대부분의 응용 프로그램에서 거의 사용됩니다. 대부분 양식 기반 애플리케이션에서 볼 수 있습니다.

자세한 내용은 https://developer.apple.com/documentation/uikit/uipickerview

에서 읽을 수 있습니다.

이 게시물에서는 프로그래밍 방식으로 UIPicker를 만들고 배열 값을 배열하고 로드하는 방법을 볼 것입니다.

시작하겠습니다.

1단계 − Xcode를 열고 단일 보기 응용 프로그램을 만들고 이름을 PickerSample로 지정합니다.

2단계 − ViewController.swift를 엽니다. 프로그래밍 방식으로 만들고 있으므로 스토리보드를 전혀 건드리지 않을 것입니다.

3단계 − 첫 번째 viewDidLoad 메소드는 UIPickerView의 객체를 생성합니다.

let UIPicker: UIPickerView = UIPickerView()

4단계 − 델리게이트를 설정하고 화면 중앙에 뷰를 로드합니다.

UIPicker.delegate = self as UIPickerViewDelegate
UIPicker.dataSource = self as UIPickerViewDataSource
self.view.addSubview(UIPicker)
UIPicker.center = self.view.center

5단계 − UIPickerViewDelegate, UIPickerViewDataSource로 viewController 클래스 확인

class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource

6단계 − 표시하려는 데이터 배열 생성

let dataArray = ["English", "Maths", "History", "German", "Science"]

7단계 − 대리자 메서드 구현,

func numberOfComponents(in pickerView: UIPickerView) -> Int {
   return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
   return dataArray.count
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
   let row = dataArray[row]
   return row
}

8단계 − 애플리케이션 실행

iOS의 배열에서 프로그래밍 방식으로 선택기를 만드는 방법은 무엇입니까?

완전한 코드

import UIKit
class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {
   let dataArray = ["English", "Maths", "History", "German", "Science"]
   override func viewDidLoad() {
      super.viewDidLoad()
      let UIPicker: UIPickerView = UIPickerView()
      UIPicker.delegate = self as UIPickerViewDelegate
      UIPicker.dataSource = self as UIPickerViewDataSource
      self.view.addSubview(UIPicker)
      UIPicker.center = self.view.center
   }
   func numberOfComponents(in pickerView: UIPickerView) -> Int {
      return 1
   }
   func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
      return dataArray.count
   }
   func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
      let row = dataArray[row]
      return row
   }
}