UIAlertView 中的 MPVolumeView?
Posted
技术标签:
【中文标题】UIAlertView 中的 MPVolumeView?【英文标题】:MPVolumeView in a UIAlertView? 【发布时间】:2010-05-13 18:20:21 【问题描述】:是否可以将 MPVolumeView 放在 UIAlertView 中?
我尝试将其放入其中,但它不显示。可能是sizeToFit
或initWithFrame:
部分?
有没有办法测试MPVolumeView
是否真的被创建了?
这是我初始化 UIAlertView
和 MPVolumeView
的代码:
UIAlertView *volumeAlert = [[UIAlertView alloc] initWithTitle:@"Volume" message:@"" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
MPVolumeView *volumeView = [[MPVolumeView alloc] initWithFrame:volumeAlert.bounds];
[volumeAlert addSubview:volumeView];
[volumeAlert sizeToFit];
[volumeAlert show];
[volumeAlert release];
[volumeView release];
【问题讨论】:
而不是使用UIAlertView
,我只是使用带有透明图像的简单UIView
作为MPVolumeView
和一些文本的“背景”,并将其加载到屏幕上,而不是UIAlertView
。我将保留这个问题以供学习:)
这里似乎有某种额外的支持:developer.apple.com/iphone/library/documentation/MediaPlayer/… ...但我自己没有尝试过。
【参考方案1】:
看看MPVolumeSettingsAlertShow()
显示用于控制系统音量的警报面板。
【讨论】:
【参考方案2】:我认为使用 VolumeAlert 的框架初始化 VolumeView 会导致问题。由于从未设置 VolumeAlert 的框架(在设置 VolumeView 的框架之前),因此您不能依赖它是任何大小。
【讨论】:
我将为此使用什么尺寸?我真的不擅长在代码/实时中创建和放置东西.. 我会尝试类似 CGRECTMAKE(0,0,100,20) 的方法,看看它是否会出现,看看这是否真的是原因。虽然如果我从我读过的其他内容中没记错的话,UIAlertView 是不可定制的(没有私有 api 或滚动你自己的版本),所以这可能都是不正确的。 我会将其标记为已接受的答案,因为这是最相关的答案。毕竟我不使用这个解决方案,请参阅问题。【参考方案3】:UIAlertView
是UIView
的子类,UIView
有一个方便的addSubview:
方法。你试过吗?
【讨论】:
@Emil 好的....那么您的代码是否有效?如果不是,发生了什么?你期望发生什么?是否记录了任何错误?你不能只说“这是我的代码,帮我修好”... 它不起作用,弹出 UIAlert,但那里没有音量滑块。可能是导致它的initWithFrame:
部分吗?如果它甚至创建了 volumeView,你知道一种测试方法吗?【参考方案4】:
您可能想查看 Jeff LaMarche 最近发布的这篇博文,应该可以满足您的需求 - Custom Alert Views
【讨论】:
以上是关于UIAlertView 中的 MPVolumeView?的主要内容,如果未能解决你的问题,请参考以下文章