У меня есть alertView, объявленный таким способом.Я не мог позвонить одному IBaction при нажатии кнопки alertView
UIAlertView* alertView =[[UIAlertView alloc]initWithTitle:@"Check In Alert" message:@"Are you sure he/she is there?" delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No", nil];
alertView.tag = sender;
[alertView show];
Итак, в alertView метод clickedButtonIndex У меня есть этот код.
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if([alertView.title isEqualToString:@"Check In Alert"])
{
ClassRoomParticipant *clsrp;
NSMutableArray *data = nil;
data=[self.presentDataArray objectAtIndex:0];
clsrp = (ClassRoomParticipant *)[data objectAtIndex:alertView.tag];
NSLog(@"Do Nothing");
if (buttonIndex == 0)
{
[clsrp setGetParcpntCheckInStatus : 2];// Checked in by Teacher
}
else if (buttonIndex == 1)
{
[clsrp setGetParcpntCheckInStatus : 3];// Not checked in by Teacher, still Absent
}
return;
}
NSString *title = [alertView buttonTitleAtIndex:buttonIndex];
if([title isEqualToString:@"OK"])
{
[self.navigationController popViewControllerAnimated:YES];
}
else if([title isEqualToString:@"Button 2"])
{
//NSLog(@"Button 2 was selected.");
}
else if([title isEqualToString:@"Button 3"])
{
//NSLog(@"Button 3 was selected.");
}
}
У меня есть такой метод.
-(void)changeStudentAction:(id)sender
{
CustomUIButton *button=sender;
NSInteger flag = 0;
if (button.selected)
{
[button setSelected:NO];
[button setBackgroundImage:[UIImage imageNamed:@"Absent_on_coloured.png"] forState:UIControlStateNormal];
flag=0;
}
else
{
[button setSelected:YES];
[button setBackgroundImage:[UIImage imageNamed:@"Present_on_coloured.png"] forState:UIControlStateNormal];
flag=1;
}
if (button.collectionIdentifier == ClsRmPrctPresntCollectionView)
{
[self ModifyDataArray:button.taggy flag:flag identifier:ClsRmPrctPresntCollectionView change:@"Button" toDate:nil section:button.section];
[self modifyCollectionArray:PRESENT processingData:self.presentDataArray identifier:ClsRmPrctPresntCollectionView index:button.taggy section:button.section];
}
self.isAnyChangesHappened=YES;
}
Я хочу, чтобы вызвать этот метод changeStudentAction внутри кнопки alertView нажмите «Да» .Когда я называю этот метод внутри buttonIndex == 0, он дает мне ошибку. Не могли бы вы рассказать мне, как вызвать этот метод внутри alertview.
Какая ошибка? –