嗯 我在目標c中有初始化類屬性時遇到一些麻煩。我已經閱讀了很多信息,但沒有找到對我的問題的答案。 所以我舉例說明。 1)關於目標c中的init屬性類
//Ex_1.h
@interface Ex_1: UIView {
IBOutlet UIButton *playBut;
}
@property(retain, nonatomic) IBOutlet UIButton *playBut;
-(void) method1;
@end
//Ex_1.m
@implementation Ex_1
@synthesize playBut;
-(id) initWithFrame:(CGRect)frame {
self = [super initWithFrame : frame];
if (self != nil)
playBut = [UIButton buttonWithType:UIButtonTypeRoundedRect]; //retainCount of playBut = 1;
return self;
}
-(void) method1 {
[playBut setTitle:@"pause" forState:UIControlStateNormal];
}
@end
我主要PROGRAMM我首先初始化Ex_1的對象,然後經過一些時間調用這個對象的方法1([對象方法1]),我得到運行時錯誤(錯誤告訴我,playBut是dealloc的,但我認爲playBut的保留數= 1)。 所以我有一些問題:
- 這有可能嗎?
- 爲什麼垃圾收集dealloces playBut如果保留計數= 1(因爲我不叫[playBut釋放〕;
- 如何初始化類屬性
我使用C familar ++和ActionScript,但我看到第一次在我的生活垃圾收集dealloced類屬性。 我使用非ARC。 這對我來說是很重要的。 感謝您的關注和解答。
http://www.whentouseretaincount.com – vikingosegundo 2013-02-16 17:45:20