调整MPMediaPickerController视图的大小?

时间:2009-08-26 13:53:51

标签: iphone objective-c cocoa-touch

在我的应用程序中,我不使用显示Wi-Fi /日期/时间的上方栏,因为它是游戏。但是我需要能够让我的用户选择他的音乐,所以我正在使用MPMediaPickerController。问题是,当我出示我的控制器时,控制器最终会在屏幕顶部留下一个10像素(aprox)条,就在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但没有运气,选择器仍然存在并在屏幕的上半部分留下空间,任何人都可以帮助我吗?

顺便说一句,这是它的样子:

alt text http://img195.imageshack.us/img195/1986/img0001yb.png

我问了一下,人们告诉我这可能确实是一个错误,你们觉得怎么样?

3 个答案:

答案 0 :(得分:3)

这可能有两种方式。是的我会说这是一个错误,选择器没有相应调整大小,但也可以说苹果希望选择器在非全屏环境中运行。

而不是试图强制它按照您的意愿工作,而是建议在选择器可见时重新打开状态栏:

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

(为了确认,您正在以与您的应用类似的方式关闭状态栏,而不仅仅是以某种方式绘制它?)

答案 1 :(得分:0)

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

答案 2 :(得分:-1)

也许?

picker.wantsFullScreenLayout = YES;
picker.view.clipsToBounds = NO;