优衣库的新报警应用程序有一个自定义UIDatePicker:

我想创建自己的自定义UIDatePicker.
我试图改变DatePicker的外观,但UI_APPEARANCE_SELECTOR在UIDatePicker返回时没有找到.
这意味着它不可能根据文档更改任何值:
为了支持外观定制,类必须符合UIAppearanceContainer协议和相关的访问方法必须注明UI_APPEARANCE_SELECTOR.
怎么能改变我UIDatePicker的外表?
使用Objective-C,我使用下面显示的代码来设置/更改选择器的字体系列和大小:
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
UILabel* tView = (UILabel*)view;
if (!tView){
tView = [[UILabel alloc] init];
// Setup label properties - frame, font, colors etc
tView.font = [UIFont fontWithName:@"Times New Roman" size:fontsize];;
}
tView.text = [_mysitedata findKeyForRow:row];
NSLog(@"C key:%@ row:%ld comp:%ld", tView.text, (long int)row, (long int)component);
return tView;
}
Run Code Online (Sandbox Code Playgroud)
但是,Swift不接受从UIView到UILabel的演员阵容,因此我不能遵循这条看起来如下所示的路径:
func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView?) -> UIView {
let label = view as! UILabel
label.font = UIFont(name: "Times …Run Code Online (Sandbox Code Playgroud) ios ×1
ios5 ×1
iphone ×1
picker ×1
swift ×1
swift2 ×1
uiappearance ×1
uidatepicker ×1
uipickerview ×1