Настроить размер представления MPMediaPickerController? - PullRequest
3 голосов
/ 26 августа 2009

В моем приложении я не использую верхнюю панель, которая отображает Wi-Fi / Дата / Время, потому что это игра. Однако мне нужно, чтобы мой пользователь мог выбирать свою музыку, поэтому я использую MPMediaPickerController. Проблема в том, что когда я представляю свой контроллер, контроллер в конечном итоге оставляет полосу в 10 пикселей (приблизительно) в верхней части экрана, как раз там, где должна быть полоса Wi-Fi / Дата / Время.

Можно ли как-нибудь увеличить свой MPMediaPickerController? или быть представленным верхом на экране?

// Configures and displays the media item picker.
- (void) showMediaPicker: (id) sender 
{ 
 MPMediaPickerController *picker =
 [[MPMediaPickerController alloc] initWithMediaTypes: MPMediaTypeAnyAudio];

 [[picker view] setFrame:CGRectMake(0, 0, 320, 480)];

 picker.delegate      = self;
 picker.allowsPickingMultipleItems = YES;
 picker.prompt      = NSLocalizedString (@"AddSongsPrompt", @"Prompt to user to choose some songs to play");

 [self presentModalViewController:picker animated: YES];
 [picker release];
}

Там я попытался установить размер 320x480, но не повезло, средство выбора все еще присутствует и оставляет место в верхней части экрана, кто-нибудь может мне помочь?

Кстати, вот как это выглядит:

альтернативный текст http://img195.imageshack.us/img195/1986/img0001yb.png

Я немного спросил, и люди сказали мне, что это действительно может быть ошибка, что вы, ребята, думаете?

Ответы [ 3 ]

3 голосов
/ 10 сентября 2009

Это может пойти двумя путями. Да, я бы сказал, что это ошибка, связанная с тем, что средство выбора не изменяет размеры соответствующим образом, но можно также утверждать, что Apple ожидает, что средство выбора будет работать в среде с не полным экраном.

Вместо того, чтобы пытаться заставить его работать так, как вам хотелось бы, я бы вместо этого рекомендовал снова включить строку состояния, пока отображается средство выбора:

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES];

(Для подтверждения, вы отключаете строку состояния аналогичным образом с вашим приложением, а не просто закрашиваете ее?)

0 голосов
/ 19 мая 2010

Возможно

picker.wantsFullScreenLayout = YES;
picker.view.clipsToBounds = NO;
0 голосов
/ 11 ноября 2009
[[picker view] setBounds:CGRectMake(0, 0, 320, 480)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...