Как изменить размер символов внутри UIPicker - PullRequest
2 голосов
/ 13 июля 2011

Я пытаюсь отцентрировать и изменить размер текста внутри моего UIPicker, но не уверен, как ... Я думаю, это может произойти одним из этих методов, скорее всего, первым ...

- (NSString*)pickerView:(UIPickerView*)pv titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    return [[NSString stringWithFormat:@"%x",row ] uppercaseString]; //Sets picker options as an Uppercase Hex value
}


#pragma mark UIPickerViewDataSource methods

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView*)pv
{
    return 5; //5 columns in the picker
}

- (NSInteger)pickerView:(UIPickerView*)pv numberOfRowsInComponent:(NSInteger)component
{
    return 16;
}

Кто-нибудь знает, как это можно сделать? Я посмотрел вокруг, но документация довольно тонкая ...

Ответы [ 2 ]

2 голосов
/ 13 июля 2011

Johns,

Как и в табличных представлениях, вы не можете изменить атрибуты шрифта заголовка по умолчанию, который вы обычно устанавливаете в методе делегата titleForRow, вместо этого вы должны использовать следующий метод:

- (UIView *)viewForRow:(NSInteger)row forComponent:(NSInteger)component

Здесь вы можете создать UIView с пользовательской UILabel и установить размер шрифта, цвет и другие атрибуты метки.

Этот метод описан в Справочник по классу Apple UIPickerView

Надеюсь, это поможет вам!

0 голосов
/ 26 мая 2013

Теперь в iOS 6 вы можете использовать NSAttributedStrings для настройки текста заголовка (хотя я не думаю, что это позволяет вам легко центрировать текст).

Новый метод UIPickerViewDelegate позволяет вам возвращать приписанную строку вместо простой ванильной строки:

(NSAttributedString *)) компонент

На странице дополнений NSAttributedString UIKit есть список всех атрибутов символов, которыми вы можете управлять: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/NSAttributedString_UIKit_Additions/Reference/Reference.html#//apple_ref/doc/uid/TP40011688

...