ここでこのトピックを見たことがありますが、クリックしたり機能したりするソリューションはありませんでした。私はUITableViewControllerを持っています(それをmyUITableViewControllerと呼びます)。要件は、ユーザーが myUITableViewController から最初の 3 つの行の 1 つを選択すると、それらがtheFirstViewControllerに移動するようになっていますが、 3 つを超える行を選択した場合はそれらが移動されます。 theSecondViewControllerに。単一のテーブルビュー セルから複数のセグエを許可していないように見えるストーリーボードを使用しています。ただし、 myUITableViewControllerから複数のセグエを直接追加できますが、適切なセグエ コードに苦労しており、適切な解決策が見つかりません。
1781 次
1 に答える
4
最良の方法は、IBから直接セグエを使用するのではなくtableview:didSelectRowAtIndexPath:
、テーブル内の行を選択するたびに、コードからセグエを使用して手動で呼び出すことです。
テーブルビュー自体から宛先までのセグエを設定する必要があります。テーブル内の特定の要素ではありません。
このようなもの:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *identifierOfSegueToCall;
if (indexPath.row < 3) {
identifierOfSegueToCall = @"theFirstViewControllerSegueIdentifier";
} else {
identifierOfSegueToCall = @"theSecondViewControllerSegueIdentifier";
}
[self performSegueWithIdentifier:identifierOfSegueToCall sender:self];
}
于 2012-05-01T22:40:04.453 に答える