0

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 と呼ばれる te​​xtView に渡されます。

[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 のデリゲートとして設定する必要があると感じていますが、それがどのようになるか正確にはわかりません。どんな方向でも大歓迎です!

4

1 に答える 1

0

私が正しく理解していれば、UITableViewで次のメソッドを呼び出すだけではいけませんか?

[UITableView selectRowAtIndexPath:animated:scrollPosition:]

これにより、インデックスパスで識別されるレシーバーの行が選択され、オプションで行がレシーバーの場所にスクロールされます。UITableViewのドキュメントを参照してください。

于 2012-10-31T15:11:49.083 に答える