2012-10-15 2 views
0

각 세그먼트가 3 개인 IB에서 5 개의 UISegmetedControl을 생성했습니다. 선택한 세그먼트를 NSArray에 저장합니다. 문제는 이전에 선택했던 사용자와 동일한 세그먼트로 뷰를 다시로드하려는 경우입니다. UISegmentedControl에 어떻게 액세스합니까? 각 컨트롤에는 다른 태그 값이 있습니다. 프로그래밍 방식으로 만들어야합니까?IB에서 생성 된 UISegmentedControl에서 선택된 세그먼트 설정

EDIT 솔루션 찾기 : 각 컨트롤에 대해 IBOutlet을 만들었습니다. 그것은 작동하지만 더 나은 해결책이있을 수 있습니다.

@interface UISegmentedControlViewController : UIViewController { 
IBOutlet UISegmentedControl *Segment1; 
IBOutlet UISegmentedControl *Segment2; 
IBOutlet UISegmentedControl *Segment3; 

}

답변

0

당신은 또한 IBOUtletCollection을 생성 (모든 SegmentedControls는 해당 모음의 구성원이) 할 수 있습니다. 이는 태그를 통해 구별 할 수있는 한 더 많은 기능을 수행하거나 동일한 기능을 수행하는 경우에 유용합니다.

0

NSArray은 선택된 세그먼트의 색인을 저장한다고 가정합니다.

-(void)viewDidLoad{ 

    Segment1.selectedSegmentIndex = [[array objectAtIndex:0] integerValue];// First index (0,1 or 2) 
    Segment2.selectedSegmentIndex = [[array objectAtIndex:1] integerValue];// Second index (0,1 or 2) 
    Segment3.selectedSegmentIndex = [[array objectAtIndex:2] integerValue];// Third index (0,1 or 2) 
} 
관련 문제