1

セグエを別のビューにプッシュするように構成された tableView があります。表は 2 つのセクションに分かれています。次のビューに移動すると、データも転送されますが、セクションに問題があります。

セクション 0 に 2 つの行があり、セクション 1 に 1 つの行があるとします。セクション 1 行を確認するにはどうすればよいですか?

ストーリーボードとセグエの準備の前に

row = indexPath.row;

if (section == 0)
{
    if (row == 0)
        data = @"Zero";

    if (row == 1)
        data = @"One";
}

if (section == 1)
{
    if (row == 0)
        data = @"Two";

    if (row == 1)
        data = @"Three";
}

そして今は機能していません。セクション 1 の 0 行をクリックすると、データに「2」ではなく「ゼロ」が表示されるのはなぜですか? セクション 0 とセクション 1 を効果的に区別するにはどうすればよいですか?

4

2 に答える 2

0

おい、どこsection = indexpath.sectionだ?これが prepareForSegue の例です。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    NSIndexPath *indexpath = [self.tableView indexPathForCell:sender];
//    indexpath.section
//    indexpath.row
}
于 2012-06-03T10:51:52.040 に答える
0
  1. のセルに表示されるデータを設定する必要がありますcellForRowAtIndexPath:
  2. Push Segue を使用して、IB のプロトタイプ セルを次のビュー コントローラーにリンクするだけです。
  3. 次に、 を使用prepareForSegueして、必要なデータを新しいビュー コントローラーに渡します。

正しいパラメータsectionrowパラメータはindexPath変数になります。

于 2012-06-03T09:59:18.357 に答える