plistファイルからデータを読み取ろうとしています。これがその構造です
|term|detail(string)|
私のプロパティ:
@property (nonatomic, strong) NSDictionary *terms;
@property (nonatomic, strong) NSArray *termKeys;//this is just a array to keep track
@property (nonatomic, strong) NSString *detail;
これは、cellForRowAtIndexPathの詳細にアクセスする方法です。
   - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [[UITableViewCell alloc]
                             initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
    NSString *currentTermsName = [termKeys objectAtIndex :[indexPath row]];
                                  [[cell textLabel] setText:currentTermsName];
    cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
    detail = [terms objectForKey:[termKeys objectAtIndex:indexPath.row]];
    NSLog(@" bombs %@",terms[@"Bomb Threats"]);
    return cell;
}
そして、私が持っているdidloadを表示します
 - (void)viewDidLoad
    {
        [super viewDidLoad];
        NSString *myfile = [[NSBundle mainBundle]
                            pathForResource:@"terms" ofType:@"plist"];
        terms = [[NSDictionary alloc] initWithContentsOfFile:myfile];
        termKeys = [terms allKeys];
    }
値にアクセスしますが、オブジェクトごとに同じ値を格納します。たとえば、plistに5つの異なるレコードがある場合、詳細を印刷すると、同じレコードが5回表示されます。
Once detail is set then I pass it to detialView
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if([segue.identifier isEqualToString:@"detailsegue"]){
        TermsDetailViewController *controller = (TermsDetailViewController *)segue.destinationViewController;
        controller.detailTerm = detail;
    }
}
これが私の辞書です:http: //pastebin.com/bxAjJzHp