在我的自定义按钮中打开 Airplay 弹出框

Posted

技术标签:

【中文标题】在我的自定义按钮中打开 Airplay 弹出框【英文标题】:Open Airplay popover in my custom button 【发布时间】:2013-01-14 18:25:46 【问题描述】:

我想知道是否可以创建自定义播放按钮并将其添加到工具栏?即我想创建打开与原始 AirPlay 按钮相同的弹出框的按钮,以共享所有屏幕。 我看到可以使用 MPMoviePlayerController 或 WebView,但这样我会发送视频或音频,但不是所有屏幕......

【问题讨论】:

【参考方案1】:

ios 5 中有一些 hoops to jump through。在 iOS 6 中,这要容易得多。添加MPVolumeView 并使用setRouteButtonImage:forState: 更改图标:

airplayView = [[MPVolumeView alloc] initWithFrame:airplayContainer.bounds];
airplayView.showsVolumeSlider = NO;
[airplayView setRouteButtonImage:[UIImage imageNamed:@"airplay"] forState:UIControlStateNormal];
[airplayView setRouteButtonImage:[UIImage imageNamed:@"airplay-highlighted"] forState:UIControlStateHighlighted];
[airplayView setRouteButtonImage:[UIImage imageNamed:@"airplay-selected"] forState:UIControlStateSelected];
[airplayContainer addSubview:airplayView]; // or add it to your toolbar or wherever

airplayContainer 只是一个普通的UIView 我在 Interface Builder 中添加以获得我想要的布局。

【讨论】:

以上是关于在我的自定义按钮中打开 Airplay 弹出框的主要内容,如果未能解决你的问题,请参考以下文章

弹出框内的按钮不起作用

如何使用情节提要从自定义 uitableviewcell 正确启动弹出框转场

隐藏弹出框控制器

从弹出框/弹出框中定义的数据填充自定义 tableView 单元格中的字段

在后台点击 Swift 时禁用关闭弹出框

iPad/iPhone 的自定义弹出框