cocoa fonts size uipickerview nsattributedstring

cocoa - UIPickerView no permitirá cambiar el nombre y el tamaño de la fuente a través del atributo `attributeTitleForRow...` del delegado



fonts size (3)

Utilizo el siguiente func para cambiar el color de la fuente y el tamaño de la fuente, el color funciona pero el nombre de la fuente y el tamaño de la fuente se niegan a funcionar.

func pickerView(pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? var myTitle = NSAttributedString(string: titleData, attributes: [NSFontAttributeName:UIFont(name: "Arial-BoldMT", size: 45)!, NSForegroundColorAttributeName:UIColor.whiteColor()])

¿alguna ayuda?

Gracias.


Puede declarar el origen de datos para pickerview

let arrDataSource:[String] = ["row 1","row 2","row 3"]

luego use este conjunto de cadenas como título para la fila en la función siguiente

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView { let pickerLabel = UILabel() pickerLabel.textColor = UIColor.blackColor() pickerLabel.text = arrDataSource[row] pickerLabel.font = UIFont(name: pickerLabel.font.fontName, size: 15) //pickerLabel.font = UIFont(name: "Arial-BoldMT", size: 15) // In this use your custom font pickerLabel.textAlignment = NSTextAlignment.Center return pickerLabel }


SWIFT 3

func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView { var string = "" let pickerLabel = UILabel() pickerLabel.textColor = UIColor.white pickerLabel.text = string pickerLabel.font = UIFont(name: "Rubik-Regular", size: 22) // In this use your custom font pickerLabel.textAlignment = .center return pickerLabel }


Tengo otra opción que puede ser útil para ti ..

Haga todo el trabajo que necesite para la vista del selector normal: para obtener más ayuda UIPickerView make en Swift iOS

Ahora sigue este paso: puedes usar el método de viewForRow como este

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView { var pickerLabel = UILabel() pickerLabel.textColor = UIColor.blackColor() pickerLabel.text = "PickerView Cell Title" // pickerLabel.font = UIFont(name: pickerLabel.font.fontName, size: 15) pickerLabel.font = UIFont(name: "Arial-BoldMT", size: 15) // In this use your custom font pickerLabel.textAlignment = NSTextAlignment.Center return pickerLabel }

Swift 3 actualizado

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView { let pickerLabel = UILabel() pickerLabel.textColor = UIColor.black pickerLabel.text = "PickerView Cell Title" // pickerLabel.font = UIFont(name: pickerLabel.font.fontName, size: 15) pickerLabel.font = UIFont(name: "Arial-BoldMT", size: 15) // In this use your custom font pickerLabel.textAlignment = NSTextAlignment.center return pickerLabel }

Puede ser una ayuda completa para ti, también lo usé en mi proyecto.