- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSInteger numberOfRows = 0;
if (self.tableView == tableView)
{
numberOfRows = self.allMovies.count;
NSLog(@"NRA:%d", self.allMovies.count);
}
else
{
[self filterPlayers];
numberOfRows = self.filteredMovies.count;
NSLog(@"NRF:%d", self.filteredMovies.count);
}
return numberOfRows;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"SearchAndAddMovieCell";
FFFSearchAndAddMovieCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
NSLog(@"Cell is nil");
cell = [[FFFSearchAndAddMovieCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
if (cell == nil)
NSLog(@"Still NIL");
}
Movie *movie;
if (self.tableView == tableView)
{
Movie *normalMovie = (Movie *)[self.allMovies objectAtIndex:indexPath.row];
movie = normalMovie;
NSLog(@"normal:%@", movie);
}
else
{
Movie *filteredMovie = [self.filteredMovies objectAtIndex:indexPath.row];
movie = filteredMovie;
NSLog(@"filter:%@", movie);
}
NSLog(@"1:%@|%@", movie.name, cell.movieName.text);
cell.movieName.text = movie.name;
NSLog(@"2:%@|%@", movie.name, cell.movieName.text);
cell.genre.text = movie.genre;
這填充我的電影初始列表完美罰款。然而,當我在UISearchBar中輸入一個字符時,我已經瞭解了我的UITableViewController,但是我沒有得到任何結果,儘管在我的NSLog中看到了應該是/應該的結果。有任何想法嗎?爲什麼我在cellForRowAtIndexPath中的自定義UITableViewCell爲null?
這裏是LOG輸出...
2014-02-24 17:15:24.274 FantasyFeed[2367:60b] NRF:1
2014-02-24 17:15:24.278 FantasyFeed[2367:60b] Cell is nil
2014-02-24 17:15:24.281 FantasyFeed[2367:60b] filter:The Godfather
2014-02-24 17:15:24.283 FantasyFeed[2367:60b] 1:The Godfather|(null)
2014-02-24 17:15:24.286 FantasyFeed[2367:60b] 2:The Godfather|(null)
爲什麼cell.movieName.text不斷空嗎?在我在searchBar中輸入任何內容之前,LOG看起來像這樣...
2014-02-24 17:15:22.015 FantasyFeed[2367:60b] NRA:12
2014-02-24 17:15:22.021 FantasyFeed[2367:60b] normal:The Godfather
2014-02-24 17:15:22.023 FantasyFeed[2367:60b] 1:The Godfather|Label
2014-02-24 17:15:22.024 FantasyFeed[2367:60b] 2:The Godfather|The Godfather
這些是我很好奇的。正常運行有他們像底部2,但searchBar運行有他們作爲前2。
2014-02-24 17:15:24.283 FantasyFeed [2367:60b] 1:教父| (null)
2014-02-24 17:15:24.286 FantasyFeed [2367:60b] 2:The Godfather | (空)
2014年2月24日17:15:22.023 FantasyFeed [2367:60B] 1:教父| 標籤
2014-02-24 17:15:22.024 FantasyFeed [2367:60b] 2:The Godfather | 教父
嗯。我有一個UITableViewController。在故事板中,它的標識符是SearchAndAddMovieCell。在上面我有一個搜索欄和搜索顯示控制器。我想那個確實有它自己的tableView ...但是在Storyboard中似乎沒有添加標識符的地方。應該有嗎?這是我失蹤的嗎? –
我改變了 FFFSearchAndAddMovieCell * cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 至 FFFSearchAndAddMovieCell * cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 現在它的工作。我假設這應該沒問題,因爲結果表永遠不會擁有比self.tableView的原始完整表更多的單元格,對嗎? –