1

我正在尝试在 UIAlertView 中创建 UIPickerView,我编写了以下代码

UIAlertView *alert = [[UIAlertView alloc] initWithFrame:CGRectMake(0, 0, 300, 200)];

alert.title = @"Preferences";
alert.message = @"\n\n\n\n\n\n\n";
alert.delegate = self;
[alert addButtonWithTitle:@"Cancel"];
[alert addButtonWithTitle:@"OK"];


UIPickerView *myPickerView = [[UIPickerView alloc] initWithFrame:CGRectZero];
myPickerView.delegate = self;
myPickerView.showsSelectionIndicator = YES;
myPickerView.autoresizingMask = UIAlertViewStyleDefault;

myPickerView.frame = CGRectMake(10, 40, 250, 150);

[alert addSubview:myPickerView];

[alert show];

但是在运行时,pickerView 的大小不适合警报视图,它看起来如图所示。

这里图片

我该如何解决这个问题?提前致谢。


我解决了,我发现我有以下代码

- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component    {
int sectionWidth = 300;

return sectionWidth;
}

当我删除它时,它修复了。:) 感谢所有试图帮助我的人,我为我的错误感到非常抱歉。:$

4

4 回答 4

1

我有类似的要求。但我无法使用“UIPickerView”成功。所以我搬到了“AFPickerView”。可能对你也有帮助!!

于 2012-07-31T10:00:25.987 回答
0

You can not resize pickerView height only change width and x and y coordinates Or you have to make alertview big eno

于 2012-07-31T08:56:22.293 回答
0

我严重质疑这种风格。此外,我认为您实际上无法更改 UIAlertView 的大小。我建议您使用表单演示执行模态 segue,以显示一个 UIView,您在其中放置了一个 UIPickerview 并带有一些按钮来确认或取消。您可以使用 StoryBoard 或手动对其进行编程。

于 2012-07-31T09:07:18.250 回答
0

更改 xib 中的宽度。为此,您需要以 XML 形式打开 Xib 并找到 PickerView 并更改宽度并保存,运行。希望这将工作!

于 2012-07-31T11:00:57.193 回答