코드에서 UITableViewCell에 UISwitch를 추가하고 대상/동작을 추가했습니다. 문제는 UISwitch가 눌려지면 반대 값으로 움직이기 시작하고 구매 한 다음 애니메이션을 멈추고 이전 값으로 돌아갑니다. 그래서 기본적으로 슬라이더가 75 %의 경로를 OFF에서 ON으로 슬라이드 한 다음 OFF로 돌아가므로 전환 할 수 없습니다. 전환 된 후에는 UITableView에 섹션을 추가하고 이것이 왜 작동하지 않는지 알 수 없습니다. 누군가 내 코드에 문제가 있는지 말해 줄 수 있습니까? 여기UISwitch가 값을 변경하지 않습니다.
self.forSaleSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(223.0f, 8.5f, 0.0f, 0.0f)];
[self.forSaleSwitch addTarget:self
action:@selector(switchTapped:)
forControlEvents:UIControlEventValueChanged];
self.forSaleSwitch.backgroundColor = [UIColor clearColor];
self.currentAnnotation.isHouseForSale = (self.forSaleSwitch.on) ? YES : NO;
[cell addSubview:self.forSaleSwitch];
그리고 UISwitch을위한 작업입니다 : : 여기
내가 UISwitch를 추가 곳이다
- (void)switchTapped:(id)sender
{
UISwitch *switcher = (UISwitch *)sender;
if (switcher.on)
{
[switcher setOn:NO animated:YES];
self.currentAnnotation.isHouseForSale = NO;
NSLog(@"OFF");
}
else
{
[switcher setOn:YES animated:YES];
self.currentAnnotation.isHouseForSale = YES;
NSLog(@"ON");
}
[self.tableView reloadData];
}
reloadData 메서드를 완전히 제거 했으므로 문제가 해결되지 않았습니다. –