1

以前在我的项目中,我在弹出式控制器中展示了一个包含 UIDatePicker 对象的 UIView,以允许用户进行或修改日期选择。我用来呈现控件的代码如下:

LocationPopVC *view = [[LocationPopVC alloc] initWithNibName:@"LocationPopVC" bundle:nil];
view.delegate = self;
[view loadForDate];
pop = [[UIPopoverController alloc] initWithContentViewController:view];
pop.popoverContentSize = CGSizeMake(300, 216);
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
[pop presentPopoverFromRect:cell.bounds inView:cell.contentView permittedArrowDirections:UIPopoverArrowDirectionRight animated:YES];

在不使用 iOS7 的设备/模拟器上运行,我得到了想要的结果:

在此处输入图像描述

现在,在 iOS7 上,我知道 UIDatePicker 对象被“扁平化”并且颜色发生了变化,正如预期的那样。但是,当我使用与上面相同的代码呈现对象时,会发生以下情况:

在此处输入图像描述

由此我提出了一些问题:

1:为什么控件会变暗?它不应该是白色的,而不是灰色的吗?

2:为什么“突出显示”的行偏离中心?不应该在中间一排吗?无论如何,它不应该看起来像这样吗?

在此处输入图像描述

我将在这里强调“没有”代码更改,唯一的区别是在 iOS7 和 iOS6 上运行。

4

1 回答 1

2

UIPicker 现在是透明的。您获得的灰色来自选择器下的视图。尝试在它后面设置一个白色视图。

于 2013-10-21T21:27:15.127 回答