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;
}