![](/img/trans.png)
[英]Cannot convert return expression of type 'P?' to return type 'UIViewController'
[英]Cannot convert return expression of type 'MopubBannerAdView' to return type 'UIViewController?'
我試圖在我的 swiftUI 應用程序中顯示 mopubBanner 並且我正在努力使用我必須在委托中實現的委托方法之一。 我不確定是否可以在這里返回一個 viewController。
不實施此方法會導致橫幅廣告不可點擊。
import MoPub
struct MopubBannerAdView: UIViewControllerRepresentable {
typealias UIViewControllerType = UIViewController
func makeUIViewController(context: Context) -> UIViewController {
return MopubBannerViewController()
}
func updateUIViewController(_ uiViewController: UIViewController, context: Context) {
}
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
class Coordinator: NSObject, UINavigationControllerDelegate, MPAdViewDelegate {
private let parent: MopubBannerAdView
init(_ mopubView: MopubBannerAdView) {
self.parent = mopubView
}
func viewControllerForPresentingModalView() -> UIViewController! {
return self.parent /// this line here throws the error
}
}
}
我怎樣才能最好地解決這個問題?
您只需要設置呈現視圖控制器,為此您可以使用窗口 rootVC 例如
func viewControllerForPresentingModalView() -> UIViewController! {
return UIApplication.shared.windows.filter {$0.isKeyWindow}.first?.rootViewController
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.