Вот мой код для события UIControlEventValueChanged
для UISegmentedControl
:
- (void)segmentAction:(id)sender{
if([sender selectedSegmentIndex] == 0){
pendingIsShowing = YES;
[freeCutsTable reloadSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationFade];
}else if([sender selectedSegmentIndex] == 1){
pendingIsShowing = NO;
[self showAvailableCuts:sender];
[freeCutsTable reloadSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationFade];
}
}
Моя проблема в том, что при изменении значения вызывается [self showAvailableCuts:sender]
, но элемент управления сегмента больше не меняет свой индекс. Если я закомментирую вызов метода, он будет работать нормально ... Я попытался передать сегментированный элемент управления в [self showAvailableCuts:sender]
и изменить его таким образом, но безрезультатно ...
- (void)showAvailableCuts:(id)sender{
if(!pendingIsShowing){
NSString *path =@"https://WebserviceURL";
NSString* escapedUrl = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
//[sender setSelectedIndex:1];
NSLog(@"%@", escapedUrl);
[self parseXMLFileAtURL:escapedUrl];
}
}
Я не уверен, почему это происходит ...