Вы должны реализовать несколько методов UITableViewDelegate
и UITableViewDataSource
.Для этого убедитесь, что вы используете подкласс UITableViewController
или ваш ViewController соответствует этим протоколам.Например:
@interface MyViewController : UIViewController <UITableViewDelegate, UITableViewDataSource>
Например, вы сохраняете свои данные из свойства NSUserDefaults
в self.userData
, которое является массивом.Вы должны заполнить это NSArray
, например, в своем методе -viewDidLoad
.
Затем убедитесь, что реализованы следующие методы:
// Customize the number of sections in the table view.
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
// Set up the number of rows
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [self.userData count];
}
Реализация следующего метода зависит от вашей iOSверсия, в iOS5 вы напишите это:
// Then fill the cells with data
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell.textLabel.text = [self.userData objectAtIndex:indexPath.row];
}
Затем следует несущественные в вашем случае методы UITableViewDelegate
, вы можете определить их позже.
Убедитесь, что у вас есть правильные привязки в конструкторе интерфейсов или раскадровках.Выходы delegate
и dataSource
вашего tableViews должны быть привязаны к вашему ViewController.
Надеюсь, это поможет.Это поможет мне ответить точно по существу, если вы покажете мне свой код.