2017-05-08 21 views
0

每當我嘗試從文本字段中輸入時,出現此錯誤。任何人都可以請幫忙?從私人有效用戶設置讀取。沒有工作的答案

2017-05-08 17:45:04.962124 MyPhotos[32987:246251] [MC] System group container for systemgroup.com.apple.configurationprofiles path is /Users/local/Library/Developer/CoreSimulator/Devices/05F02AB6-BDEA-43EA-9E7E-D547D3A0CC1A/data/Containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles 
2017-05-08 17:45:04.962486 MyPhotos[32987:246251] [MC] Reading from private effective user settings. 

代碼:

class AddPhotoController: UIViewController,UITextFieldDelegate { 

    @IBOutlet weak var photoTitle: UITextField! 
    @IBOutlet weak var photoTags: UITextField! 
    @IBOutlet weak var photoURL: UITextField! 
    @IBOutlet weak var photoPreview: UIImageView! 


    @IBAction func savePhoto(sender: AnyObject) { 
     let title: String = photoTitle.text! 
    } 
} 
+0

當我運行的代碼,並試圖獲得的價值,它總是返回零,並且應用程序後墜毀。 – user1845835

+0

我不認爲上述是您錯誤的真正原因。我不時看到「不斷從私人有效用戶設置中讀取」(並且沒有崩潰:))看看這裏的例子:http://stackoverflow.com/a/40458288/4063602,或者在這裏: http://stackoverflow.com/q/41416048/4063602看起來像Xcode中的錯誤。所以...你能告訴我們一些你的代碼,所以我們可以幫助你確定是什麼導致了崩潰? – pbodsk

+0

是的,我有。但可以說,我有一個按鈕,我想,當我按下它 @IBAction FUNC savePhoto獲取文本字段的值(發件人:AnyObject) { 讓標題:字符串= photoTitle.text! } 這總是返回零和它堅持在這一點上的應用程序。我確實試圖檢查一個斷點,但我總是返回零 – user1845835

回答

0

你說:

可以說我有一個按鈕,我想要得到的文本字段的值當我按下它

如果由於某種原因,您無法從photoTitle讀取該值,那麼您的應用將崩潰這條線:

let title: String = photoTitle.text!

在這裏你試圖迫使photoTitle.text價值爲String,無論它是零或沒有,而斯威夫特並不像:)

所以,第一防禦後衛可能會在使用之前檢查其值是否爲nil,並且只有當它不爲零時,纔會使用它。喜歡的東西:

@IBAction func savePhoto(sender: AnyObject) { 
    if photoTitle.text != nil { 
     let title = photoTitle.text! 
    } 
}  

現在你知道的title值不爲零,並且可以安全地使用它。

下一個問題......爲什麼是零擺在首位?這似乎是您的@IBOutlet的問題。看起來photoTitle var沒有正確連接到故事板中的UITextField。你能否驗證你的Interface Builder中的UITextField已正確連接到你photoTitle變量?

希望這可以幫助你。

相關問題