我必须创建一个包含 14-16 个组件的 UIPickerView。一切都初始化并且工作得很好,但是,我在右侧看到一个奇怪的黑条(见图),浪费了本来就很紧张的空间。
有办法消除吗?还有一种方法可以消除组件之间的所有黑色间距和组件内部的灰线吗?
谢谢。
(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:
(NSInteger)component reusingView:(UIView *)view
{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
[label setText:[numArray objectAtIndex:row]];
[label setTextAlignment:UITextAlignmentCenter];
[label setFont:[UIFont boldSystemFontOfSize:14]];
[label setBackgroundColor:[UIColor clearColor]];
return label;
}
最佳答案
您的选择器 View 的宽度是多少?你是怎么设置宽度的?
宽度是固定的还是你使用了类似的东西
(注意横向模式)
CGRectGetHeight([UIScreen mainScreen].applicationFrame)//在横向模式下使用它作为宽度
然后您可以将该宽度除以选择器 View 的数量 (14-16)。 使用选择器 View 的宽度,您不应该有那个黑条。
如果你确实做了我刚刚写的事情,我想你也做了, 如果您以编程方式创建了所有这些(正如您所拥有的),那么这可能是状态栏空间。 在 Storyboard外部创建 ui 组件时,某些组件将自己定位在状态栏的 0.0f、20.0f 处。其中一些是 UINavigationController。
关于iphone - UIPickerView - 当组件较多时右侧黑条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11724370/