【问题标题】:Possible to disable Search in MPMediaPickerController?可以在 MPMediaPickerController 中禁用搜索吗?
【发布时间】:2015-08-22 23:02:24
【问题描述】:

使用 MPMediaPickerController 的实例将歌曲作为背景音乐抓取到我正在制作的应用程序中。效果很好,但是每当使用 MediaPicker 中的搜索功能时,每次打开它都会导致其呈现滞后。 (延迟通过关闭/重新启动应用程序持续存在,只有重新启动手机才能将其删除)。每次显示 MediaPicker 时都会打印以下错误消息:

<MPRemoteMediaPickerController: 0x15c1fe00> timed out waiting for fence barrier from com.apple.MusicUIService

我可以滚动浏览/选择歌曲没问题,但是一旦输入搜索查询,演示期间的延迟就会开始。

呈现视图控制器的代码:

rootView?.presentViewController(picker, animated: true, completion: { () -> Void in
    picker = nil
})

rootView 是当前视图的(一个 SKScene)ViewController,我使用它来呈现 MPMediaPicker 并充当委托。无法绕过这个错误,所以很好奇是否可以完全删除搜索栏。

【问题讨论】:

    标签: ios swift mpmediaitem mpmediapickercontroller


    【解决方案1】:

    所以很好奇是否可以完全删除搜索栏

    根本不可能自定义 MPMediaPickerController。如果它正在做一些麻烦的事情,请提交错误报告。

    不过,我有两个积极的建议:

    • 将选择器的showsCloudItems 设置为false

    • 听起来您只使用了 一个 媒体选择器控制器实例。不要那样做。每次召唤时都将实例重新创建为新的媒体选择器控制器。

    【讨论】:

    • 这令人沮丧,是的,我刚刚提交了一份。并感谢您的建议!但是已经使这两个都生效了。不显示云项,每次调用触发演示的方法时,我都会实例化一个新的选取器控制器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2021-04-23
    • 1970-01-01
    • 2015-10-21
    • 2013-06-18
    相关资源
    最近更新 更多