作者llauoykcuf (阿布揪)
看板MacDev
標題[問題] 在寫swift的時候出現thread 1
時間Thu Jun 8 01:07:24 2017
小弟我最近剛學swift
在學到用UIView建立一個藍色區域後
http://i.imgur.com/swlgfhm.jpg
要重新設定這個區域的位置和大小
http://i.imgur.com/YWzneoy.jpg
可是不管我用書上的哪種方法
在執行之後都會出現如下所示的thread 1
http://i.imgur.com/WAMuJgD.jpg
請問該如何解決呢?
還是我有哪裡做錯了?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.40.197.80
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MacDev/M.1496855246.A.653.html
1F:推 panda04056: 你要看的錯誤訊息是右下角顯示的那一行 06/08 01:37
2F:→ panda04056: 意思是有一個變數的值是nil 06/08 01:37
3F:→ panda04056: 但是你卻把它拿去用了 06/08 01:39
4F:→ panda04056: 你的blueView 宣告了兩次 06/08 01:41
5F:推 tentenlee: 應該說你在didload是宣告一個blueView 然後就把這個 06/08 03:44
6F:→ tentenlee: blueView用addSubView放到view裡面了 06/08 03:45
7F:→ tentenlee: 然後你在viewDidAppear的時候使用的這個blueView 並沒 06/08 03:45
8F:→ tentenlee: 有初始化,又剛好你在宣告他的時候optional是給! 所以 06/08 03:46
9F:→ tentenlee: xcode沒有去提醒你說 這個物件有可能是nil所以你編譯OK 06/08 03:46
10F:→ tentenlee: 真正執行的時候blueView是nil就無法塞frame給他 06/08 03:47
11F:→ tentenlee: 要改很簡單 你只要把viewDidLoad的那個 let blueView = 06/08 03:47
12F:→ tentenlee: 這個let拿掉 你就正常可以跑了 06/08 03:48
13F:→ llauoykcuf: 非常感謝! 06/08 10:05