2017-07-11 91 views
-1

我的問題是單元格被創建,但它不會調用任何init方法。我不使用xib。這裏是我的簡單的代碼:TableView自定義單元格不輸入初始化方法

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    _tabV = [[UITableView alloc]initWithFrame:self.view.bounds]; 
    [_tabV registerClass:[TestCell class] forCellReuseIdentifier:@"Cell"]; 
    _tabV.delegate = self; 
    _tabV.dataSource = self; 


    [self.view addSubview:_tabV]; 
} 


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ 
    return 10; 
} 


- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    return 100; 
} 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 

    TestCell * cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; 


    return cell; 

} 

和細胞:

- (instancetype)init{ 
    if (self = [super init]) { 
     self.contentView.backgroundColor = [UIColor redColor]; 
    } 
    return self; 
} 


- (instancetype)initWithFrame:(CGRect)frame{ 
    if (self = [super initWithFrame:frame]) { 
     self.contentView.backgroundColor = [UIColor greenColor]; 
    } 
    return self; 
} 

但無論哪種[INIT]或[initWithFram]沒叫。這是一個非常簡單的問題,我認爲。但我只是不知道哪裏出了問題...

+0

爲'UITableViewCell'指定的初始值設定爲[的initWithCoder:(https://developer.apple.com/documentation/uikit/uitableviewcell/1623220-initwithcoder?language=objc)和[initWithStyle:reuseIdentifier:](https://developer.apple.com/documentation/uikit/uitableviewcell/1623276-initwithstyle?language=objc)。所以你不希望有任何你提到的電話。 – nayem

+0

哦......我認爲細胞是一個正常的觀點......你是對的,謝謝你。 – Neko

回答

相關問題