UIPickerViewでFont Picker作るぜ!Swift3

UIPickerViewでFont Pickerを作ろうと思います。

Swift3のUIPickerViewでFont Pickerを作るためにはDelegateで表示するUIViewを返すメソッドにFontを指定したラベルを返せばUIPickerViewでFont Pickerを作ることができます

下記のteratailを参考に、ほぼコピペで簡単に作ることができました。

コードは下記です。必要最低限の部分だけ抜歯してるので、Swiftの基本的な使い方に慣れてないと理解しづらいかもしれません。すみません。

 

[php]

//ピッカーに表示される配列の値です

var Arr: hogeArray = ["date1" ,"date2","date3"]

//配列の値に対して指定するフォント名です
//suusikiというフォントは外部から持ってきたフォントのため勝手に反映はされませぬ
//DBLCDTempBlackとMarkerFelt-Thinは勝手に反映されます

var fontArray = ["suusiki","DBLCDTempBlack","MarkerFelt-Thin"]

//fontを変える

func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {

// 表示するラベルを生成する
let label = UILabel(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: 50))

//ラベルをセンターにします
label.textAlignment = .center

         //ラベルのテキスト(値)に配列の値を指定します
label.text = hogeArr[row]

         //ラベルのテキストのフォントにフォントを入れた配列の値を指定します
label.font = UIFont(name: fontArray[row],size:20)
        
          リターンでラベルを返す
return label
}

[/php]

 

 

 

参考

[urlpreviewbox url=”https://teratail.com/questions/37836″/]

藤沢瞭介(Ryosuke Hujisawa)
  • りょすけと申します。18歳からプログラミングをはじめ、今はフロントエンドでReactを書いたり、AIの勉強を頑張っています。off.tokyoでは、ハイテクやガジェット、それからプログラミングに関する情報まで、エンジニアに役立つ情報を日々発信しています!

未整理記事