3
我得到在Xcode(SWIFT)這個錯誤:斯威夫特錯誤:無法投類型的值 'NSTaggedPointerString'(0x1a1264378)到 '的NSNumber'(0x1a126f900)
Could not cast value of type 'NSTaggedPointerString' (0x1a1264378) to 'NSNumber' (0x1a126f900).
我清楚錯誤所在用//錯誤:( 「...」)
代碼:
import UIKit
import iAd
import AVFoundation
import AudioToolbox
let MAX : UInt32 = 4
let MIN : UInt32 = 1
class ViewController: UIViewController, ADBannerViewDelegate {
var chances = 10
var won = 0
var highscore = 0
var random = Int(arc4random_uniform(MAX) + MIN)
var sound = 1022 //sound if you won
var sound2 = 1105 //sound if reset
var sound3 = 1321 //sound if lose
var welkmute = 1 //mute = 1 and unmute = 2
@IBOutlet weak var timeswon: UILabel!
@IBOutlet weak var Banner: ADBannerView!
@IBOutlet weak var Highscores: UILabel!
@IBOutlet weak var mute: UIButton!
@IBOutlet weak var unmute: UIButton!
@IBOutlet weak var chancesleft: UILabel!
func unmUte() {
unmute.setTitleColor(UIColor.redColor(), forState: UIControlState())
mute.setTitleColor(UIColor.blueColor(), forState: UIControlState())
}
func mUte() {
mute.setTitleColor(UIColor.redColor(), forState: UIControlState())
unmute.setTitleColor(UIColor.blueColor(), forState: UIControlState())
}
override func prefersStatusBarHidden() -> Bool {
return true
}
@IBAction func Mute(sender: AnyObject) {
sound = 4095
sound2 = 4095
sound3 = 4095
mUte()
defaults.setObject("1", forKey: "GetMute")
defaults.synchronize()
}
@IBAction func Unmute(sender: AnyObject) {
sound = 1022
sound2 = 1105
sound3 = 1321
unmUte()
defaults.setObject("2", forKey: "GetMute")
defaults.synchronize()
}
override func viewDidLoad() {
super.viewDidLoad()
//unmUte()
Banner.hidden = true
Banner.delegate = self
self.canDisplayBannerAds = true
if defaults.valueForKey("GetHighScore") != nil {
highscore = defaults.valueForKey("GetHighScore") as! NSInteger
}
Highscores.text = "Highscore: \(highscore)"
if defaults.valueForKey("GetMute") != nil {
welkmute = defaults.valueForKey("GetMute") as! NSInteger //ERROR: (Thread 1: breakpoint 3.1)
if welkmute == 1 {
mUte()
}
if welkmute == 2 {
unmUte()
}
}
}
但請注意,'defaults.setInteger'將在Swift 3中消失(它將被推斷,但你不能明確地調用它)。 – matt
謝謝,@matt,我更新了答案 – vadian
謝謝你幫助我。 –