Я создаю таблицу, в которой вы можете искать различные записи.Он работает просто отлично при поиске, но теперь я хочу загрузить вид таблицы, нажав кнопку.Но при запуске:
[self.tableView reloadData];
cellForRowAtIndexPath не вызывается ?!Я читал множество людей, имеющих подобные проблемы, но ясно, что мне не удается понять их решение проблемы.Помогите мне:)
Мой заголовочный файл:
@protocol SearchViewControllerDelegate;
@interface SearchViewController : UIViewController <UISearchBarDelegate, UITableViewDelegate, UITableViewDataSource> {
id <SearchViewControllerDelegate> delegate;
NSMutableArray *listOfItems;
NSMutableArray *listOfItemsDynamic;
UITableView *tableView;
IBOutlet UISearchBar *sBar;
}
@property (nonatomic, assign) id <SearchViewControllerDelegate> delegate;
@property (nonatomic, retain) UITableView *tableView;
- (void) searchTableView:(NSString *) searchText;
- (IBAction)done:(id)sender;
- (IBAction)refresh:(id)sender;
@end
@protocol SearchViewControllerDelegate
- (void)searchViewControllerDidFinish:(SearchViewController *)controller;
@end
Часть исходного кода:
@implementation SearchViewController
@synthesize delegate, tableView;
- (void)viewDidLoad {
[super viewDidLoad];
...
}
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText {
[self searchTableView:searchText]; // Search all entries based on user input...
[self.tableView reloadData]; // Works just fine
}
- (IBAction)refresh:(id)sender {
[self searchTableView:@"a"]; // Search all entries containing "a"...
[self.tableView reloadData]; // FAILS! (cellForRowAtIndexPath not getting called...)
}
Пожалуйста, помогите мне, я совершенно новичок в целии проблема, вероятно, связана с тем, как работают делегаты и т.д ...