我已经拼凑了一些来自stackoverflow的片段,但我似乎无法得到我期望的这种行为。
我正在尝试使用 NSUSerDefaults 并用数据填充 UITableView。
字典已填充,所有 NSLog 的输出都符合我的预期。但最终cellForRowAtIndexPath
没有向表格视图返回任何内容。
我将单元格标识符和重用设置为“单元格”,但表格视图为空
- (void)viewDidLoad {
[super viewDidLoad];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
myDictionary = [defaults dictionaryRepresentation]; }
NSLog(@"Dict: %@",myDictionary);
NSLog(@"count: %d", [myDictionary count]);
NSArray * allKeys = [myDictionary allKeys];
NSLog(@"%@",allKeys);
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1; }
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [myDictionary count]; }
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"cell";
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
NSArray * allKeys = [myDictionary allKeys];
cell.textLabel.text = [myDictionary objectForKey:[allKeys objectAtIndex:indexPath.row]];
cell.detailTextLabel.text = [myDictionary objectForKey:[allKeys objectAtIndex:indexPath.row]];;
return cell; }
在我的myTableViewController.m
文件的开头,我有:
@interface myTableViewController ()
{
NSDictionary *myDictionary;
}