[請益] 請教一下XIB對應的CLASS在哪邊設定呢
看板MacDev作者donkeychen (Bad_To_The_Bone)時間12年前 (2013/06/10 10:32)推噓1(1推 0噓 14→)留言15則, 3人參與討論串1/2 (看更多)
大家好
由於程式是別人寫的code
正在學習
xcode版本是 4.6
想請教一下
如果我的project 只有一個NSApplication 的target
我目前看到target的設定是
Summary->Main Interface-> "mainMenu"
Info->Custom OS X Application target properties-> principle class->
"NSApplication"
Main nib file base name-> "mainMenu"
我目前有找到mainMenu.xib
找了這個xib的所有設定選項
現在不是太懂究竟這個nib跟哪個class關聯著
我自己是有搜尋code裡面awakeFromNib的部分是有找到
與此xib關聯的class
目前自己"推測"
target會從Main nib file base name指定的xib開始跑
xib編譯後會變成nib 跑了以後會去跑awakeFromNib的function
不知道這邊有沒有錯誤
(不好意思對於mac程式沒有太多經驗)
現在比較大的疑惑是
如果有多個xib
怎麼把每個xib跟每個awakeFromNib對應在一起
該去哪邊看呢
感謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.248.50
→
06/10 12:02, , 1F
06/10 12:02, 1F
→
06/10 12:02, , 2F
06/10 12:02, 2F
→
06/10 14:17, , 3F
06/10 14:17, 3F
→
06/10 14:18, , 4F
06/10 14:18, 4F
→
06/10 14:19, , 5F
06/10 14:19, 5F
→
06/10 14:19, , 6F
06/10 14:19, 6F
→
06/10 14:19, , 7F
06/10 14:19, 7F
→
06/10 14:20, , 8F
06/10 14:20, 8F
→
06/10 14:22, , 9F
06/10 14:22, 9F
→
06/10 14:22, , 10F
06/10 14:22, 10F
推太多不好寫
舉例來說
我有一個target 裡面有兩個xib
Add.xib
Del.xib
點選Add.xib 在Placeholders-> File's Owner
http://ppt.cc/jPXK
右邊點選第三個 (我不知道這叫什麼 圖裡面上面有一排可點的)
http://ppt.cc/Tze-
在Custom Class裡面
我可能找到這個Class 是 MYAdd這個class
接著去code裡面搜尋
可能有找到一個
MyAdd.h 有
@interface MYAdd
與 MyAdd.mm 有
@implementation MYAdd
也有 awakeFromNib
所以這樣我可以把Add.xib <-> MyAdd.h MyAdd.mm 關聯在一起
同樣的可能有Del.xib <-> MyDel.h MyDel.mm
而不是用檔名在那邊猜測
到這邊我可能幫自己解決了一半的問題
但是我自己實作一個新的Cocal Application
MainMenu.xib是程式自己產生出來的
其對應的Class卻是"NSApplication"
究竟會對應到哪個.h 與.mm我就無從得知了
如果我New一個User Interface 就會多一個xib
而這個新New出來的xib Files's Owner的class也是"NSApplication"
我剩下一半的問題就在於
如果一個target只有一個xib的情況下
從File's Owner裡面找到的是NSApplication
這邊要怎麼找到其對應的.h .mm檔呢
感謝
※ 編輯: donkeychen 來自: 211.72.248.50 (06/10 14:40)
推
06/10 14:26, , 11F
06/10 14:26, 11F
→
06/10 14:27, , 12F
06/10 14:27, 12F
→
06/10 14:27, , 13F
06/10 14:27, 13F
→
06/10 14:43, , 14F
06/10 14:43, 14F
→
06/10 14:43, , 15F
06/10 14:43, 15F
我這邊就用xcode new 一個cocal application
然後new 一個user interface
如下圖
http://ppt.cc/Hf4e
有一開始產生的MainMenu.xib 與後來加入的Add.xib
點選MainMenu.xib的Placeholders -> File's Owner
http://ppt.cc/ckhi
可以看到右方的custom class 裡面的class顯示為NSApplication
點選新增的MainMenu.xib的Placeholders->File's Owner
http://ppt.cc/HC2x
可以看到右方的custom class 裡面的class顯示為NSApplication
我找不到這兩個的差別
下午翻來翻去了以後發現
原始產生的MainMenu.xib
下方的Object有一個App delegate
http://ppt.cc/ohLm
藍色的cube(不太知道這是啥)
點選後 右方的custom class裡面的class為Appdelegate
這個是跟我新加的xib不一樣的地方
(add.xib只有font manager)
對這個Object欄位裡面出現的東西還沒有太有概念
※ 編輯: donkeychen 來自: 211.72.248.50 (06/10 17:28)
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章