0

私はテーブルビューを持っています。ユーザーが行を選択すると、標準の「よろしいですか?」を表示したいと思います。ダイアログの一種。ただし、何をすべきかについての情報が、選択した行に関連付けられていると確信している場合。どうすればそれにアクセスできますか?

これが私がこれまでに持っているものです。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    SitePeople *sitePersonAtIndex = [self.sitePeoples objectAtIndex:indexPath.row];
    UIAlertView *alert;
    alert = [[UIAlertView alloc] initWithTitle:@"Are you sure?" message:[NSString stringWithFormat:@"This will send an email to %@", sitePersonAtIndex.SitePerson] delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Send", nil];
    [alert show];
}

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
    self.alertShowing = NO;
    if (buttonIndex == 0)
    {
        //cancelled, do nothing
    } else {
        //SitePeople *sitePersonAtIndex = [self.sitePeoples objectAtIndex:indexPath.row];
        SitePeople *sitePersonAtIndex = [self.sitePeoples objectAtIndex:[self.tableView indexPathForSelectedRow]];
        NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
        NSString *email = [defaults stringForKey:@"email"];
        NSString *password = [defaults stringForKey:@"password"];
        [self sendEmail:[NSString stringWithFormat:@"http://service.pharmatech.com/Share/emailstudy/%@/%@/%@/%@", email, password, self.study.ProjectID, sitePersonAtIndex.SitePeopleID]];
        UIAlertView *alert;
        if (self.alertShowing == NO)
        {
            if ([self.sendEmailResult.WasSuccessful isEqual: @"true"]) {
                alert = [[UIAlertView alloc] initWithTitle:@"Success" message:self.sendEmailResult.Message delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
            } else {
                alert = [[UIAlertView alloc] initWithTitle:@"Error" message:self.sendEmailResult.Message delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
            }
            [alert show];
        }
    }
}

ヒントをいただければ幸いです。ありがとう。

4

2 に答える 2