作者xareelee (XareeLee)
看板MacDev
標題Re: [問題] category的使用
時間Tue Oct 13 23:45:38 2009
※ 引述《xareelee (XareeLee)》之銘言:
: 我對過書上 我應該沒有漏打什麼 還是我有忽略了什麼設定嗎?
: 理論上這樣呼叫[UIColor randomColor];應該沒有問題吧?
剛剛重新創造兩個新的.h和.m檔 並把原先randomColor的code複製過去
結果重新import就可以使用了 可是原本的卻不知道為什麼不行!
而原本的兩個.h和.m檔當初不小心把宣告放在.m檔中
而把implementation放在.h檔中
因為一時偷懶 所以我先把.h檔 在Xcode中改成.hh檔
然後把.m檔改成.h檔
最後再把.hh檔改成.m檔
也就是兩個檔名對調 我想這可能是造成執行錯誤的主因吧!
可是我不懂為為什麼會這樣耶....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.13.42.121
1F:→ zonble:Exception 的訊息是,UIColor 沒有那個 method 10/13 23:54
2F:→ zonble:所以最有可能的狀況是,你在 Xcode 裡頭放了你的 .m 10/13 23:54
3F:→ zonble:但是並沒有加到你要 compile 的 target 裡頭 10/13 23:55
4F:→ zonble:那個 category 的 .m 沒有編到,就沒有那個 method 了。 10/13 23:55
5F:→ zonble:順道一提,ObjC 的 convention 是 10/13 23:56
6F:→ zonble:檔名取成 UIColor+Random.h 10/13 23:56
7F:→ xareelee:謝謝 原來如此 解了大惑又有新觀念 感謝感謝 10/14 00:47
8F:→ xareelee:那請問一下 這種狀況要怎麼手動加入target呢?拖進去嗎? 10/14 00:49
9F:→ zonble:在檔案上 get info,選 target tab,也可以選要加入 10/14 01:04
10F:→ zonble:哪一個 target 10/14 01:04
11F:→ zonble:拖的話記得要拖入 Compile Sources 裡頭 10/14 01:05