Swift 快速-在加载横幅时更改应用程序。-xcode 6 GM
我一直在开发一个主要基于文本的应用程序,底部有一个Iadbanner 然而,我们都知道,网络成瘾并不总是存在的。因此,我希望能够动态更新我的textView的高度,以便在隐藏横幅时,textView会占用浪费的空间。并在加载横幅时调整其大小 下面是我目前对所讨论的Viewcontroller所做的操作Swift 快速-在加载横幅时更改应用程序。-xcode 6 GM,swift,height,uitextview,iad,xcode6,Swift,Height,Uitextview,Iad,Xcode6,我一直在开发一个主要基于文本的应用程序,底部有一个Iadbanner 然而,我们都知道,网络成瘾并不总是存在的。因此,我希望能够动态更新我的textView的高度,以便在隐藏横幅时,textView会占用浪费的空间。并在加载横幅时调整其大小 下面是我目前对所讨论的Viewcontroller所做的操作 import UIKit import iAd class DetailVC: UIViewController, UITextViewDelegate, ADBannerViewDelegat
import UIKit
import iAd
class DetailVC: UIViewController, UITextViewDelegate, ADBannerViewDelegate {
//Our label for displaying var "Items/cellName"
@IBOutlet var imageViewOutlet: UIImageView!
//connect in IB connection inspector with your ADBannerView
@IBOutlet var adBannerView: ADBannerView!
//Receiving variable assigned to our mainVC var "items"
var cellName: String = ""
var imageView: UIImageView = UIImageView()
var image = UIImage(named: "handcuffs.png")
var textViewText: String = ""
var textView: UITextView = UITextView(frame: CGRect(x: 5.0, y: 238.0, width: 315.00, height: 283.00))
//height = 332 for full screen 283 for small
override func viewDidLoad() {
super.viewDidLoad()
println("+--------------------+")
println("| Detail view loaded |")
println("+--------------------+")
// Iad stuff
self.adBannerView.delegate = self
self.canDisplayBannerAds = true
self.adBannerView.hidden = true //hide until ad loaded
//Setting up the textView
textView.text = textViewText
textView.editable = false
textView.backgroundColor = UIColor.clearColor()
textView.font = UIFont(name: "Helvetica", size: 15)
//adding textview as subview
self.view.addSubview(textView)
//ImageViewOutlets
imageViewOutlet.image = image
//Assign your string var to your navbar title
self.title = cellName
func bannerViewWillLoadAd(banner: ADBannerView!) {
NSLog("bannerViewWillLoadAd")
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
NSLog("bannerViewDidLoadAd")
//self.textView.removeFromSuperview()
//textView = UITextView(frame: CGRect(x: 0.0, y: 238.0, width: 320.00, height: 283.00))
//self.view.addSubview(textView)
self.adBannerView.hidden = false //now show banner as ad is loaded
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
NSLog("bannerViewActionDidFinish")
//optional resume paused app code
}
func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
NSLog("bannerViewActionShouldBegin")
//optional pause app code
return true
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
NSLog("didFailToReceiveAdWithError")
}
//... your class implementation code
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
函数“bannerViewDidLoadAd”中注释掉的代码是我认为可以解决我的问题的代码。遗憾的是,该功能似乎从未运行过?我不太熟悉Iads,希望有人能给我一个提示,告诉我如何在加载广告时更改文本视图的高度。CanDisplayBannerAds:
设置此选项可使用视图控制器启用横幅广告显示的自动管理。请务必注意,这将通过在视图控制器的视图上方插入新的容器视图来修改视图控制器的视图层次结构。其影响是视图控制器的view属性将不再返回最初提供的视图,而是返回新的容器。要访问原始视图,请使用originalContentView属性
因此,请删除此行:
self.canDisplayBannerAds = true
一切都会好起来的