在进入下一个视图之前,我需要检查几个受控部分,确保所有部分都已被点击。
到目前为止,我有这个:
-(void)checkAllSegments
{ BOOL alertShown;
alertShown = NO;
for (UISegmentedControl *swItem in allSegmentControlOutlet) {
int selectedSegment = swItem.selectedSegmentIndex;
swItem.segmentedControlStyle = UISegmentedControlStyleBar;
//didPass = YES;
if (selectedSegment == -1) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Fill in all forms"
message:@"Please go back and fill in missing info"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
// [swItem setTintColor:[UIColor redColor]];
if (!alertShown) {
[alert show];
alertShown = YES;
didPass = NO;
return;
}
}
}
if (didPass) {
[self performSegueWithIdentifier:@"ToHiring" sender:self];
}
}
问题是我不知道该放在哪里,didPass = YES;
因为它在哪里被注释掉,除非循环中的最后一项被填满,否则它会起作用。或者也许有更好的方法来检查我不知道的集合中的所有值。