Re: [問題] 如何在元件內使用 nib & class

看板MacDev作者 (罪を憎んで人を憎まず)時間11年前 (2014/04/04 20:28), 11年前編輯推噓3(300)
留言3則, 1人參與, 最新討論串2/2 (看更多)
: 1.我要可以在 IB 裡直接打入 class name : 2.然後要可以和 nib 檔配合 : : 為了元件的重覆使用,比如我有兩個 controller ,都用 xib 檔繪製 UI : ControllerA.xib, ControllerB.xib : 而元件是 MyObj.xib, MyObj.m, Myobj.h (繼承自 UIView) : : MyObj.xib 內可以直接打 MyObj 這個 class name : 整個元件的 UI 繪製及動作細節,可以全封在 MyObj.* 這三個檔內 : 為了重覆使用,所以 MyObj 的內部元件,是不會拉任何 reference : 到 ControllerA & ControllerB 去的 : : 好,現在我要怎麼把 MyObj 這個元件,擺入 ControllerA.xib 內呢? : 我和同事是只會迂迴的方法啦,而且又被說是錯誤的 : : ※ 編輯: HuangJC (175.180.82.140), 04/04/2014 19:22:37 : → Blueshiva:所以你到底去看 initWithCode 是為了什麼被呼叫了沒? 04/04 20:09 在 Myobj.m 中 實現 NSObject方法 - (id) awakeAfterUsingCoder:(NSCoder *)aDecoder { BOOL isTheViewGotLoaded = ([[self subViews] count] == 0); if (isTheViewGotLoaded) { MyObj *myObj = [[[NSBundle mainBundle] loadNibName:@"Myobj" owner:nil option:nil]lastObject]; myObj.frame = self.frame; return myObj; } return self; } ControllerA. xib 拉一個UIView 然後 custom class 打上MyObj 其他就xib直接貼上用吧 試看看吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.132.188.73 ※ 文章網址: http://www.ptt.cc/bbs/MacDev/M.1396614528.A.C4B.html ※ 編輯: yuanruo (220.132.188.73), 04/05/2014 11:52:48

04/07 00:48, , 1F
手上沒電腦,不過如果這個會動,的確就是我要的而且不迂迴
04/07 00:48, 1F

04/07 00:50, , 2F
謝謝
04/07 00:50, 2F

04/07 12:04, , 3F
試驗成功了!! 感謝
04/07 12:04, 3F
文章代碼(AID): #1JFgM0nB (MacDev)
討論串 (同標題文章)
文章代碼(AID): #1JFgM0nB (MacDev)