0

tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath クリックしたセルに応じて変化するテキストを含む alertView を挿入しました..

「SEND」ボタンのアクションは、選択したセルにあるラベルの内容を保存する必要があります。

PS私はParse.comを使用しています

これまではすべてが機能していましたが、問題が 1 つだけあります。保存されたデータは、選択したセルのデータではなく、テーブル ビューの最初のセルのデータであるため、正しくありません。これ以上は保存しません。これだけです。 ..

Nell'IndexPath' は何か間違っていますか? 選択したセル all'alertview を認識するのを手伝ってもらえますか?

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{


    if ( buttonIndex ==0) {

        NSLog(@"ritorno");

    }

    else {

        NSArray *indexes = [self.TableView indexPathsForSelectedRows];
        for (NSIndexPath *indexPath in indexes) {

            PFUser *user = [self.Utenti objectAtIndex:indexPath.row];
            PFObject *RichiestaAmicizia = [PFObject objectWithClassName:FF_AMICIZIE_CLASS];
            [RichiestaAmicizia setObject:[PFUser currentUser] forKey:FF_AMICIZIE_DA_USER];
            [RichiestaAmicizia setObject:user forKey:FF_AMICIZIE_A_USER];
            [RichiestaAmicizia setObject:@"In_Attesa" forKey:FF_AMICIZIE_STATO];
            [RichiestaAmicizia saveInBackground];

        }

   NSLog(@"Send");
}

}
4

1 に答える 1

1

私が正しく理解した場合:

インスタンス変数を作成します。

NSInteger _clickedCell;

それから

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    _clickedCell = indexPath.row;
    ....
}



- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if ( buttonIndex ==0) {

        NSLog(@"ritorno");

    }
    else {
        PFUser *user = [self.Utenti objectAtIndex:_clickedCell];
        PFObject *RichiestaAmicizia = [PFObject objectWithClassName:FF_AMICIZIE_CLASS];
        [RichiestaAmicizia setObject:[PFUser currentUser] forKey:FF_AMICIZIE_DA_USER];
        [RichiestaAmicizia setObject:user forKey:FF_AMICIZIE_A_USER];
        [RichiestaAmicizia setObject:@"In_Attesa" forKey:FF_AMICIZIE_STATO];
        [RichiestaAmicizia saveInBackground];
        NSLog(@"Send");
    }
}
于 2013-11-14T19:58:39.250 に答える