MacDev 板


LINE

我也剛學iOS沒多久... 那我來分享一下經驗好了.. 有錯請各位大大指正 ※ 引述《shinrenpan (好無聊,丟個水球來吧)》之銘言: : ViewDidLoad跟loadView的差別 loadView是如果你要自己產生View而非透過nib的話 你要把你產生view的邏輯寫在這 如果你是打算從nib load..請不要改寫這個method 此method會在view沒有被load 而controller.view被用到的時候被呼叫 ViewDidLoad是view產生完才會call 不管是透過nib.. 或是你自己的loadView : -(id)initWithCoder:(NSCoder *)aDecoder : 何時會用到呢? 這個是來自於NSCoding protocol 如果你想要讓你的Class可以支援serialize就必續提供這邊的實作 細節請看http://goo.gl/SCY9I 初學者第一次看到這個應該是從UIView這邊看到的 文件也說如果你的view是從Nib來的話 記得要實作這個method : -(void)awakeFromNib : 何時會用到呢? 這個是從NSObject UIKit Additions Reference定義的 當你的物件從nib產生的..產生完會callback這個method 所以如果你的class有需要在nib產生完有些動作 例如對你關連的IBOutlet properties有些動作 可以寫在這裡 : - (void)viewDidUnload 跟 - (void)didReceiveMemoryWarning : 觸發的條件 其實不太需要特別管說什麼是後會觸發 UIViewController只要不在前景都有可能在觸發 其中viewDidUnload要注意的是要把loadView產生的object也要跟著清掉 如果你的view是從nib來的..記得也要把IBOutlet的properties設成nil 以免memory leakage. : -(void)viewDidAppear:(BOOL)animated : 我的理解是當這個view顯示完成時會call這個funtion : 但是當2個UIViewController A 跟 B : 在A的(void)viewDidLoad 設置self.view = B.view : 為什麼B的(void)viewDidAppear:(BOOL)animated 無法響應 UIViewController的view都是"被動的"等底層呼叫你的loadView 只要在loadView當中..我們才會賦予self.view到一個view instance 用別的controller的view指過來不是正確的用法 而viewDidAppear這個動作是viewController的view被addSubview才會發生 這也可以解釋你這個動作為什麼不會被響應 : 2個UIViewController A 跟 B : 當 [A presentModalViewController:B animated:YES] : 然後[B dismissModalViewControllerAnimated:YES] 回到A後 : B佔用的記憶體會清除嗎(包含B裡面所有的物件) : 當A push到B, B pop 回A, B佔用的記憶體會清除嗎(包含B裡面所有的物件) 所有記憶體是否會清除決定於retain count 理論上是會被清除 你可以在B的dealloc那邊設中斷點攔攔看 如果沒被呼叫 可能你要檢查有沒有地方忘了release : 當某個物件A = [[[NSObject alloc]init]autorelease] : A會在什麼條件下release呢? : 可以強制將autorelease的物件release嗎? 每個app都有runloop 當處理你目前的message跑完 就會release 講的有點抽象 建議可以參考http://goo.gl/NNGYH --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.251.162







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP