TableView в приложението за лента с раздели? Приложението се срива

Стъпки за възпроизвеждане:
1. Създайте приложение за лента с раздели, наречено „TestApp“
2. Добавете нов файл, подклас UIViewController с XIB потребителски интерфейс, наречен „Таблица“
3. Отворете MainWindows.xib, щракнете върху елемента от лентата с втори раздел и в инспектора променете името на NIB от „SecondView“ на „Table“. Запазете и затворете.
4. Отворете Table.xib и плъзнете TableView върху изгледа. Сега свържете dataSource и делегираните изходи на TableView към собственика на файла Table.xib.
5. Добавете следния код към Table.m:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
NSLog(@"Returning num sections");
return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"Returning num rows");
return 1;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"Trying to return cell");

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
cell.text = @"Hello";
NSLog(@"Returning cell");
return cell;
}

6. Стартирайте приложението и изберете елемента Втора лента с раздели.

Ако започна с приложение, базирано на View, добавя TableView към него, свързвам изходите към собственика на файла и добавя тази част от кода, всичко работи добре. какво правя грешно Защо приложението се срива?


person Andrei    schedule 11.03.2010    source източник


Отговори (1)


В Interface Builder, след като сте актуализирали NIB Name към Table, щракнете върху раздела Identity на инспектора (последния раздел). След това актуализира идентичността на класа до „Таблица“.

person Chris Gummer    schedule 29.05.2010