如何使UIPickerView组件文本始终适合?

时间:2015-07-26 21:22:47

标签: ios uipickerview autosize

假设你有一个UIPickerView,你希望你的文本总是适合它的组件得到的给定空间(对于不合适的文本,不是“......”)。

如何解决这个问题?

1 个答案:

答案 0 :(得分:5)

简单的解决方案:

实施

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view

在你的选择器代表中:

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
    UILabel* tView = (UILabel*)view;
    if (!tView)
    {
        tView = [[UILabel alloc] init];

        tView.textAlignment = NSTextAlignmentCenter;

        tView.adjustsFontSizeToFitWidth = YES;
        // Setup label properties - frame, font, colors etc
    }

    tView.text = [self pickerView:pickerView titleForRow:row forComponent:component];
    //Add any logic you want here

    return tView;
} 

这使得标签能够完美地贴合文本。

享受!