У меня есть UIPickerView и нужно сделать его отображаемым внутри UIActionSheet в iPad (он работает очень просто в iPhone, а не в iPad).Добавление UIPickerView внутри таблицы UIActionSheet в iPad
Я кнопку на View, когда я нажимаю на я выполнить следующий код:
- (IBAction) buttonPressed:(id)sender
{
NSLog(@"I am pressed");
UIPickerView* picker = [[UIPickerView alloc] initWithFrame:CGRectMake(100,200,500,500)];
picker.delegate = self;
picker.dataSource = self;
picker.showsSelectionIndicator = YES;
[self.view addSubview:picker];
}
// делегат и DataSource функции PickerView:
// returns the number of 'columns' to display.
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
// returns the # of rows in each component..
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return 5;
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return @"One";
}
Но когда изменение выше код для добавления PickerView внутри ActionSheet, Он показывает только заголовок ActionSheet, но без PickerView внутри него!
Измененный код следующим образом:
- (IBAction) buttonPressed:(id)sender
{
NSLog(@"I am pressed");
UIActionSheet* actionSheet = [[UIActionSheet alloc] initWithTitle:@"My PickerView"
delegate:nil
cancelButtonTitle:nil
destructiveButtonTitle:nil
otherButtonTitles:nil];
UIPickerView* picker = [[UIPickerView alloc] initWithFrame:CGRectMake(100,200,500,500)];
picker.delegate = self;
picker.dataSource = self;
picker.showsSelectionIndicator = YES;
[actionSheet addSubview:picker];
[actionSheet showFromRect:CGRectMake(0, 0, 320, 469) inView:self.view animated:NO];
}
Когда я сменил pickerView initLine на 'UIPickerView * picker = [[UIPickerView alloc] initWithFrame: CGRectMake (0,0,320,469)];' Теперь я могу видеть очень маленькую часть PickerView внутри ActionSheet, но показан ActionSheet как очень маленький квадрат. Как я могу сделать его больше, я пытаюсь изменить его ширину и высоту, но, похоже, не работает! –
Попробуйте установить cancelButtonTitle для некоторого NSString, чтобы узнать, изменяется ли размер. –
Я засасываю, вместо этого я буду использовать 'UIPopoverController' с' UITableViewController' внутри! .. Спасибо, в любом случае! –