plist によって入力されるテーブルビューがあり、セルがクリックされると、detailViewController のテキストビューに plist に関連付けられた値の文字列が入力されます。
detailViewController
これはすべて完全に機能しますが、テーブルビューを反復処理する前と次のボタンを追加したいと思います。
これが私prepareForSegue
の私のものTableViewController
です:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"promisePush"])
{
NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];
NSInteger section = [indexPath section];
NSString *key = [uniqueArray objectAtIndex:section];
NSArray *nameSection = [sections objectForKey:key];
NSDictionary *dictionary = [nameSection objectAtIndex:indexPath.row];
DetailViewController *dvController = [segue destinationViewController];
//dvController.array = titles;
dvController.selectedRow = indexPath.row;
dvController.titleCat = [dictionary valueForKey:@"Title"];
dvController.kjvText = [dictionary valueForKey:@"kjvText"];
dvController.nkjvText = [dictionary valueForKey:@"nkjvText"];
dvController.nivText = [dictionary valueForKey:@"nivText"];
dvController.verse = [dictionary valueForKey:@"verse"];
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Promises" style:UIBarButtonItemStyleBordered target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;
}
}
現在、kjvText は、detailViewController の txtdText と呼ばれる textView に渡されます。
[txtdText setText:nkjvText];
を介してdetailViewControllerに渡されたindexPath.rowを取得できます
dvController.selectedRow = indexPath.row;
int を次の数値に繰り返すことができます
- (IBAction)nextPromise:(UIButton *)sender {
selectedRow = selectedRow + 1;
}
しかし、detailViewController の textView を更新する tableView の次の indexPath.row にその番号を伝える方法がわかりません。
TableViewController を DetailViewController のデリゲートとして設定する必要があると感じていますが、それがどのようになるか正確にはわかりません。どんな方向でも大歓迎です!