2012-02-14 2 views
1

У меня есть UITableVIew. Теперь я сделал свой собственный UITableViewCell. Но если в моей таблице ничего не отображается. Однако ячейки по-прежнему можно выбрать и открыть DetailView. Какую команду я забыл?UITableViewCell не отображается в моей таблице

//Customize the appearance of table view cells. 
-(UITableViewCell *)tableView: (UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    static NSString *CellIdentifier = @"MainTableCell"; 

    MainTableCell *cell = (MainTableCell*)[tableView dequeueReusableCellWithIdentifier:Cel lIdentifier]; 

    if (cell == nil) { 
     cell = [[[MainTableCell alloc] initWithStyle:UITableViewCellStyleDef ault reuseIdentifier:CellIdentifier] autorelease]; 
    } 

    // Configure the cell. 
    VerwaltungInformation *selectedFormel = [listOfFormularies objectAtIndex:indexPath.row]; 

    cell.FormelNameLabel.text = selectedFormel.nameFormel; 

    return cell; 
} 

Должен ли я добавлять специальные предметы? Если кому-то нужно больше кода, пожалуйста, скажите мне.


Вот мой MainTableCell.h:

import <UIKit/UIKit.h> 
@interface MainTableCell : UITableViewCell { 
    UILabel *FormelNameLabel; 
    UILabel *ErklaerungVerfuegbarLabel; 
    UILabel *BeispielVerfuegbarLabel; 
    UILabel *RechnerVerfuegbarLabel; 
} 

@property (nonatomic, retain) IBOutlet UILabel *FormelNameLabel; 
@property (nonatomic, retain) IBOutlet UILabel *ErklaerungVerfuegbarLabel; 
@property (nonatomic, retain) IBOutlet UILabel *BeispielVerfuegbarLabel; 
@property (nonatomic, retain) IBOutlet UILabel *RechnerVerfuegbarLabel;` 
@end 

А вот мой MainTableCell.m:

#import "MainTableCell.h" 

@implementation MainTableCell 
@synthesize FormelNameLabel;` 
@synthesize ErklaerungVerfuegbarLabel; 
@synthesize BeispielVerfuegbarLabel; 
@synthesize RechnerVerfuegbarLabel;` 

- (void)dealloc { 
    [FormelNameLabel release]; 
    [ErklaerungVerfuegbarLabel release]; 
    [BeispielVerfuegbarLabel release]; 
    [RechnerVerfuegbarLabel release]; 
    [super dealloc]; 
} 
@end 
+0

Правильно ли вы подключили источник данных и делегат таблицыView? Если да, поместите контрольную точку в - (NSInteger) tableView: (UITableView *) tableView numberOfRowsInSection: (NSInteger) и посмотрите на возвращаемое значение (это должно быть количество ваших строк) – Stas

+0

Таблица работает, но если я добавлю я не получаю подпись на табличных ячейках. Должен ли я объявить cellin rootviecontroller.h или где-то еще? Поскольку я только импортировал MainTableCell.h и ничего не сделал ... – Daniel05

ответ

0

вы прокомментировали эту строку

cell. VerwaltungInformation *selectedFormel = [listOfFormularies objectAtIndex:indexPath.row]; 

, а также проверьте wthr

selectedFormel.nameFormel 

содержит любое значение.

+0

selectedFormel.nameFormel возвращает строку. Но я не знаю, что вы имеете в виду с первой частью вашего сообщения ... – Daniel05

0

Хорошо, я постараюсь ответить. 1. перейдите в NSLog, это значение выбраноFormel.nameFormel, прежде чем устанавливать его в label.text.

NSLog(@"selectedFormel.nameFormel:%@", selectedFormel.nameFormel); 

2. Вы правильно настроили свою ячейку? вы уверены, что, например, кадр FormelNameLabel не равен нулю?

NSLog(@"cellFrame:%@", NSStringFromCGRect(cell.frame)); 

Вы уверены, что вы добавили ярлык в ячейку в качестве подсмотра? Если все это сделано, и оно по-прежнему не показывает код из вашей камеры!

+0

Моя консоль: selectedFormel.nameFormel: PQ-Formel; cellFrame: {{0, 0}, {320, 44}} - А теперь? Должен ли я опубликовать свой файл MainTableCell.h/.m? – Daniel05

+0

Да, я думаю, вы должны опубликовать его – Stas

Смежные вопросы