复制UIDatePicker字体样式

时间:2015-05-26 16:43:51

标签: ios objective-c fonts uipickerview uidatepicker

我正在尝试复制UIDatePicker中用于自定义UIPickerView的确切字体大小。不幸的是我无法获得正确的字体大小。

我尝试了什么:

setFont:

的子类时,调整UILabel UIDatePickerView方法以打印字体
-(void) swizzledSetFont:(UIFont*)font{
    if([self view:self hasSuperviewOfClass:[UIDatePicker class]] ||
       [self view:self hasSuperviewOfClass:NSClassFromString(@"UIDatePickerWeekMonthDayView")] ||
       [self view:self hasSuperviewOfClass:NSClassFromString(@"UIDatePickerContentView")]){
       NSLog(@"Label:%@ Font:%@",self,font);
       [self swizzledSetFont:font];

    } else {
        //Carry on with the default
        [self swizzledSetFont:font];
    }
}

相同的代码适用于调整这些标签内的字体颜色,所以这不是问题。

返回以下内容:<UICTFont: 0x7f9f23cea230> font-family: ".HelveticaNeueInterface-Regular"; font-weight: normal; font-style: normal; font-size: 21.00pt

但是在自定义UIPickerView中将其设置为UILabels的字体不会产生所需的外观。

任何想法?我认为这里可能会有某种CALayer内容,但我对如何调试它没有想法。这是iOS 8顺便说一句。

1 个答案:

答案 0 :(得分:1)

如果您的唯一目的只是了解UIDatePicker使用的字体,那么使用视图调试器将简化这一过程。将简单的UIDatePicker添加到视图层次结构中并在模拟器上运行它。然后,调试视图并向下钻取视图层次结构以查找字体。我认为这比你一直在做的更有趣,更简单。

enter image description here