2011-09-20 38 views
0

爲什麼我仍然在釋放我的對象後得到retainCount = 1爲什麼我釋放我的對象後仍然得到retainCount = 1

這是我的代碼。任何一個可以幫助我解決這個問題:

newsDetail *newsdetails = [[newsDetail alloc] initWithNibName:@"newsDetail" bundle:nil]; 
    [newsdetails insertSomeData]; 

    NSLog(@"Object Count in memmory = %d",[newsdetails retainCount]); 

    [self.view addSubview:newsdetails.view]; 
    NSLog(@"Object Count in memmory = %d",[newsdetails retainCount]); 

    [newsdetails release]; 
    NSLog(@"Object Count in memmory = %d",[newsdetails retainCount]); 

........

2011-09-20 10:26:10.208 memmory[1977:207] Object Count in memmory = 1 
2011-09-20 10:26:10.212 memmory[1977:207] Object Count in memmory = 1 
2011-09-20 10:26:10.213 memmory[1977:207] Object Count in memmory = 1 
+0

retainCount無用。別叫它。 retainCount永遠不會返回0. – bbum

回答

-1

當您添加視圖作爲一個子視圖地方,那麼這個觀點被保留。

0

被分配的對象被保留,因此保留= 1; addSubview將保留計數增加1,您可以在發佈調用中將保留數減1。

+0

那麼輸出結果如何是1,1,1呢?如果你說的是實話,它不應該是1,2,1嗎? – Emil

+0

我應該在哪裏發佈添加的子視圖..... – neoJacob

+1

是的,但是您正在打印newstedai​​l的retainCount,而不是newsdetail.view – mja

相關問題