【Swift】ピッカーを設定してスクロールしてリスト選択するためのソースコード

この記事は約4分で読めます。

現役エンジニアがおすすめするプログラミングスクール!

自宅で学べるオンラインのプログラミングスクール【TechAcademy】

TechAcademyはオンライン完結型の受講タイプです。20以上の豊富なコースから好きなものを選択して学習できます。

メンターも質問にきちんと応じてくれて、第13回 日本e-Learning大賞、プログラミング教育特別部門賞ともに受賞しています。

Webアプリ、Webデザインのみならず、ブロックチェーンやデータサイエンス、動画作成のコースなど幅広いです。


無料相談はこちら!


Webデザインスクール「デジタルハリウッド STUDIO by LIG」

Web制作会社(株式会社LIG)が運営するスクールなので、より専門的なWebデザイン技術を身につけることが可能です。コンサルタントによる厚い転職支援もあるので、Webデザイナーとしての就職ができます。

未経験でも6ヶ月でWebデザイナーになれます。


無料相談はこちら!


テックキャンプ デザイナー転職(旧:【TECH::EXPERT】デザインスクール)

エンジニア転職に向いています。案件が獲得できなかった際は、全額返金保証してくれます。

家にいながら仕事がしたい、副業で収入をあげたい方向けです。


無料相談はこちら!


SkillHacks(スキルハックス) オンラインプログラミングスクール

ハッカソンや開発コンテストで優勝経験ありの実力派エンジニアからWebアプリケーションの開発手法のすべてを学べます。


無料相談はこちら!

ポートフォリオ制作実績

Create a new xcode project > 新規作成しましょう。

Pickerviewを検索 > Pickerviewを設置したい場所にドラッグ&ドロップ

Pickerviewが設置されました。複数のリストをスクロールして選択できるようになりました。

ここからはソースコードをプログラミングして細かい設定をしていきます。

スポンサーリンク

ピッカービューのソースコード(UIPickerView)

任意で自由な項目を設定する方法

class PickerViewController: UIViewController, UIPickerViewDelegate,
UIPickerViewDataSource{

  override func viewDidLoad(){
    super.viewDidLoad()
    picker.delegate = self
    picker.dataSource = self
  }
  let language = {
    "html"
    "css"
    "javascript"
    "java"
    "swift"
  }
  let school
  "ITCE"
  "TechAcademy"
  "CodeCampGate"
}
override func didReceiveMemoryWarning(){
  super.didReceiveMemoryWarning()
}
@IBOutlet weak var picker: UIPickerView!
//列数
func numberOfComponentsInPickerView(pickerView: UIPickerView)
Int{
  return 2
}
//行数
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) 
Int{
  switch component{
    case 0: return language.count
    case 1: return school.count
    default: return 0
  }
}
//文字列を表示させる
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int)
String!{
  switch component{
    case 0: return language[row]
    case 1: return school[row]
    default: return ""
  }
}
//列の幅を調整
func pickerView(pickerView: UIPickerView, widthForComponent component: Int)
CGFloat{
  switch component{
      case 0: return 200.0
      case 1: return 100.0
      default: return 0.0
    }
  }
}

 

言語の表をhtml、css、javascript、java、swift、実際にプログラミングを学習する有名なスクールの表としてITCE、TechAcademy、CodeCampGateを並べてみました。

 

初期値を設定するソースコード

@IBAction func clickStart(sender: AnyObject){
  picker.selectRow(1, inCoponent: 0, animated: true) //行番号、列番号、animated
  picker.selectRow(2, inCoponent: 1, animated: true)
}

選択された項目を取得するソースコード

@IBAction func clickButton(sender: AnyObject){
  let row0 = picker.selectedRowInCoponent(0) //let row 行番号 = picker.selectedRowInCoponent(列番号)
  let row1 = picker.selectedRowInCoponent(1)
  label1.text = "¥(row0)番目 ¥(language[row0])"
  label2.text = "¥(row1)番目 ¥(school[row1])"
}

 

 

 

 

タイトルとURLをコピーしました