2009-06-10 9 views
3

Ich versuche die Tabellenansicht eines UITableViewControllers zu ändern, damit ich auch andere Inhalte in die Ansicht einfügen kann. Ich versuche also, die Tabellenansicht in eine neue Ansicht zu tauschen. Folgendes funktioniert, aber wenn ich später auf self.tableview referenziere, wird null zurückgegeben. Was mache ich falsch ?TableView in eine andere Ansicht innerhalb von UITableViewController tauschen

 
- (void)viewDidLoad { 
    [super viewDidLoad]; 

    UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; 
    self.tableView.frame = CGRectMake(0, 0, 320, 200); 
    [view addSubview:self.tableView]; 
    self.view = view; 
} 

Ja, ich kann wahrscheinlich einen UIViewController verwenden Sie einfach und meine Tableview dort erstellen. Ich habe nur versucht, zu tun zu vermeiden, dass, wenn ich kann, und die Geschenke von UITableViewController bekommen

Antwort

1

Um das Problem zu bekommen ich nur statt dem Tableview und überschrieb die Tableview Getter

 
- (UITableView*)tableView{ 
    return myTableView; 
} 

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    myTableView = [super tableView]; 
    UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; 
    self.view = view; 
    myTableView.frame = CGRectMake(0, 0, 320, 200); 
    [view addSubview:myTableView]; 
    } 
+0

Ich glaube, ich bin das gleiche Problem haben. In meinem Fall überschreibe ich loadView und lege eine alternative Ansicht (mit UILabel und UIActivityIndicator) an, die angezeigt wird, während der Inhalt der Tabelle geladen wird. Wenn das Laden abgeschlossen ist, versuche ich die Tabellenansicht anzuzeigen, und ich sehe, dass es NULL ist. Ich bin verwirrt. – Ternary

Verwandte Themen