根据文档,选择器视图更喜欢使用attributedTitleForRow而不是titleForRow。如果首选项返回nil,则选择器视图将退回到titleForRow

我正在实现这两种方法,而且attributedTitleForRow从未被调用。即使titleForRow返回nil,并且attributedTitleForRow返回NSAttributedString,它也不会被调用。但是,titleForRow总是被调用。

这是我所拥有的:

- (NSString *)pickerView:(UIPickerView *)pickerView
             titleForRow:(NSInteger)row
            forComponent:(NSInteger)component {
    return @"Hello";
}

- (NSAttributedString *)pickerView:(UIPickerView *)pickerView
             attributedTitleForRow:(NSInteger)row
                      forComponent:(NSInteger)component {
    return [[NSAttributedString alloc] initWithString:@"World"];
}

最佳答案

我没有看到viewForRow委托方法也被调用了。如果调用此方法,则titleForRowattributedTitleForRow均不会运行。

09-06 11:39