1

質問があります。文字列を含む動的に設定されたテーブルがあります。検索機能が付いていますが、選択した文字列/セルに応じてセグエを実行するにはどうすればよいですか?

どんな助けでも大歓迎です!ありがとう!

4

2 に答える 2

1

私はしばらく前に同様の問題を抱えていましたが、このコードは本当に役に立ちました。

検索機能が完全に機能していると仮定しています。

それはすべて、else if ステートメントに基づいています。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
  {
if (tableView == self.searchDisplayController.searchResultsTableView) {
    UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
    NSString *cellcontent = selectedCell.textLabel.text;

    if ([cellcontent isEqualToString:"CellOne"]) [self performSegueWithIdentifier:@"CellOne" sender:self];
    else if ([cellcontent isEqualToString:"CellTwo"]) [self performSegueWithIdentifier:@"CellTwo" sender:self];        
}

}

おそらく、これは検索の RESULTS テーブルからのセグエのみに対応していることに気付くでしょう。結果のないテーブルには、非常によく似たコードが必要です。その小さな変化を理解できると確信しています。

さらに情報が必要な場合はお知らせください。

于 2013-04-02T21:09:59.383 に答える
0

適切なデリゲート メソッドを実装し、セルの textLabel テキストをアサートします。適切なセグエを実行します...

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
  UITableViewCell *cell = [self tableView:tableView cellForRowAtIndexPath:indexPath];
  if ([cell.textLabel.text isEqualToString:@"SomeText"]) {
    [self performSegueWithIdentifier:@"MySegue" sender:cell];
  }
}
于 2013-04-02T21:10:01.523 に答える