0
누가 세그먼트 화 된 컨트롤이 이벤트를 트리거했는지 확인하는 방법을 알고 있습니까? 분할 된 컨트롤을 포함하는 두 개의 셀을 생성합니다. segmentedControlIndexChanged 메서드에서 어떤 세분화 된 컨트롤이 이벤트를 트리거했는지 알고 싶습니다. 태그를 사용했는데 작동하지 않습니다. 나는 이것으로 새롭다. 도와 주셔서 감사합니다. 분할 제어를 포함하는 세포에 대한두 개의 분할 된 컨트롤을 구분하는 방법은 무엇입니까?
코드 :
cellParinti = [[Cell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
cellParinti.textLabel.text = @"Parinti";
cellParinti.label.text = dog?dog.parinti:@"";
cellParinti.segmentedControl.selectedSegmentIndex = [dog.parinti isEqualToString:@"da"] ? 0 : 1;
cellParinti.segmentedControl.tag = 1;
[cellParinti.segmentedControl addTarget:self action:@selector(segmentedControlIndexChanged:) forControlEvents:UIControlEventValueChanged];
[cellParinti addSubview:cellParinti.textLabel];
[cellParinti addSubview:cellParinti.label];
[cellParinti addSubview:cellParinti.segmentedControl];
cellPedigree = [[Cell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
cellPedigree.textLabel.text = @"Pedigree";
cellPedigree.label.text = dog?dog.pedigree:@"";
cellParinti.segmentedControl.tag = 2;
cellPedigree.segmentedControl.selectedSegmentIndex = [dog.pedigree isEqualToString:@"da"] ? 0 : 1;
[cellPedigree.segmentedControl addTarget:self action:@selector(segmentedControlIndexChanged:) forControlEvents:UIControlEventValueChanged];
[cellPedigree addSubview:cellPedigree.textLabel];
[cellPedigree addSubview:cellPedigree.label];
[cellPedigree addSubview:cellPedigree.segmentedControl];
트리거 된 방법에 대한 코드 :
-(void) segmentedControlIndexChanged:(id)sender{
NSIndexPath *indexPath;
UISegmentedControl * sg1 = (UISegmentedControl *)sender;
// reload data based on the new index
if (sg1.tag == 1){
cellParinti.label.text = sg1.selectedSegmentIndex == 0 ? @"da" : @"nu";
dog.parinti = sg1.selectedSegmentIndex == 0 ? @"da" : @"nu";
}
else {
cellPedigree.label.text = sg1.selectedSegmentIndex == 0 ? @"da" : @"nu";
dog.pedigree = sg1.selectedSegmentIndex == 0 ? @"da" : @"nu";
}
}
감사합니다. :) 당신은 남자입니다! – alin
대답을 수락 할 수 있으므로 답이없는 다른 곳에서는 나타나지 않습니다. – Srikanth