How can I change text font in UIPickerView in iOS 7? How can I change text font in UIPickerView in iOS 7? ios ios

How can I change text font in UIPickerView in iOS 7?


- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{    UILabel* tView = (UILabel*)view;    if (!tView)    {       tView = [[UILabel alloc] init];       [tView setFont:[UIFont fontWithName:@"Helvetica" size:14]];       //[tView setTextAlignment:UITextAlignmentLeft];       tView.numberOfLines=3;    }    // Fill the label text here    tView.text=[wishvalues objectAtIndex:row];   return tView;}


Here's the Swift version tested on iOS8:

Update in Swift for iOS8, you can add this to your delegate:

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView {    var pickerLabel = view as? UILabel;    if (pickerLabel == nil)    {        pickerLabel = UILabel()        pickerLabel?.font = UIFont(name: "Montserrat", size: 16)        pickerLabel?.textAlignment = NSTextAlignment.Center    }    pickerLabel?.text = fetchLabelForRowNumber(row)    return pickerLabel!;}


Updated for Swift 4:

public func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {    let label = view as? UILabel ?? UILabel()    label.font = .systemFont(ofSize: 16)    label.textColor = .white    label.textAlignment = .center    label.text = text(for: row, for: component)    return label}