嗨,這可能是一個簡單的問題,我很抱歉,如果它已經在這裏,我搜索了我可以找到的答案,但無法找到適合我的具體情況的答案。檢查按鈕是否被按下以傳遞正確的數據
這是問題。我目前正在創建一個文本冒險,在Xcode 6中使用swift實踐一些iOS開發,在這種情況下,我的視圖控制器中有一個文本視圖,可以滾動到屏幕底部的底部和2個按鈕。問題的關鍵在於,如果你點擊一個按鈕,它會將你引向不同的場景,並且還會改變我在項目中定義的一個類UserCharacter的一些常規字符統計信息,以更改其他按鈕的一些基本數據,反之亦然。
事情是在我的segue我需要檢查用戶按下哪個按鈕,所以我知道哪些數據要繼續,但不能完全弄清楚如何做到這一點。
這裏是我到目前爲止,(我已經通過我的一次數據之前,但沒有需要作出選擇,因此是相當簡單)
class RouteZeroViewController: UIViewController {
var character : UserCharacter?
@IBAction func choiceOneButton(sender: AnyObject) {
character?.strength += 3
character?.intelligence -= 2
}
@IBAction func choiceTwoButton(sender: AnyObject) {
character?.agility += 2
character?.intelligence += 2
character?.courage -= 2
}
@IBOutlet weak var textView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
// set initial textView load at the top instead of middle/bottom
self.textView.scrollRangeToVisible(0)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// Get the new view controller using [segue destinationViewController].
// check for button one push ????????
var thirdSceneA = segue.destinationViewController as RouteOneAViewController
thirdSceneA.character = character
// check for button two push ????????
var thirdSceneB = segue.destinationViewController as RouteOneBViewController
thirdSceneB.character = character
}
}
任何幫助,將不勝感激。謝謝。
啊確定。我認爲對我來說,我很難看到變量,因爲我處於調試模式,但它似乎允許我轉到下一個場景。 雖然有一個問題,如果我們已經在故事板上指定了每個按鈕將帶我們的位置,爲什麼我們必須擁有該行self.performSegueWithIdentifier(「identifier」,sender:sender)? – tokyo0709 2015-04-01 14:42:14