UIToolbar未显示

时间:2011-12-24 05:33:51

标签: iphone ios ios4

请找到下面的代码我试图将工具栏添加到uipicker但它无法正常工作

请告诉我

    UIPickerView *pickerViewCountry = [[UIPickerView alloc] init];
pickerViewCountry.showsSelectionIndicator = YES;
pickerViewCountry.dataSource = self;
pickerViewCountry.delegate = self;
pickerViewCountry.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleHeight);
[pickerViewCountry sizeToFit];
pickerViewCountry.frame = CGRectMake(0,210 , 320, 15);
[self.view addSubview:pickerViewCountry];

//[pickerViewCountry release];

UIToolbar *toolbar = [[UIToolbar alloc] init];
toolbar.frame = CGRectMake(10,200, 320, 44);
toolbar.barStyle = UIBarStyleBlackTranslucent;
[pickerViewCountry addSubview:toolbar];
[toolbar release];

3 个答案:

答案 0 :(得分:2)

致电时:

toolbar.frame = CGRectMake(10,200, 320, 44);

CGRect与拾取器视图相关(如果你将addSubview添加到pickerViewCountry),因此放置位置不会在拾取器视图的顶部对齐,而是位于拾取器视图外部右下角的某处,因此它不会不显示。

你想要完成什么?您可能不想将UIToolbar添加到UIPickerView。您可以尝试将UIToolbar添加到主视图中。

[self.view addSubview: toolbar];

并保持toolbar.frame = CGRectMake(10,200, 320, 44);原样。

答案 1 :(得分:0)

由于您将工具栏添加为子视图,我相信CGRectMake的X和Y坐标将相对于pickerViewCountry框架。尝试设置以下行:

toolbar.frame = CGRectMake(10,200, 320, 44);

到这一个:

toolbar.frame = CGRectMake(0,0, 320, 44);

我没有尝试过,所以我不确定是否真的如此。如果当时没有其他人做出回应,我会试一试并告诉你。

答案 2 :(得分:0)

你可以做不同的事情来解决这个问题。

  1. 将工具栏添加到self.view并在选择器上方设置框架

  2. 将工具栏框架更改为toolbar.frame = CGRectMake(10,-44, 320, 44);