UIPickerViewでFont Picker作るぜ!Swift3

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

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

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

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

 



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

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
}
    


 

 

 

参考


GUTE-URLS

Wordpress is loading infos from teratail

Please wait for API server guteurls.de to collect data from
teratail.com/questions/3783...