2009-08-26 3 views
0

세그먼트 컨트롤 중 하나가 클릭되면 세그먼트 컨트롤의 동작에 변수 (두 개의 정수)를 전달하려고하는 세그먼트 컨트롤이 있습니다. 이렇게하려면 아래 코드를 어떻게 수정합니까? 세그먼트 작업으로 이동하는 방법을 알고 있지만 변수를 전달하는 방법을 모르겠습니다. 나는 이것이 아마도 obj-C 101이라는 것을 알고 있지만 나는 곤두박질 친다. 당신의 도움을 주셔서 감사합니다.세그먼트 컨트롤의 동작에 변수 전달

[segmentedControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged]; 

. 
. 
. 
// segment action 
- (void) segmentAction:(id)sender { 

} 

답변

2

나는 그것을 할 방법이 없다고 생각합니다. UIControl에 대한 메소드는 UserInfo 사전이나 NSInvocation 객체를 사용하지 않습니다. 최선의 방법은 selectedSegmentIndex에 기반한 액션 메소드의 값을 설정하는 것입니다.

0

2 개의 정수 속성을 할 수있는 것처럼 @property 지시문을 통해 처리 할 수 ​​있으며 세그먼트 컨트롤을 UIView에서 세그먼트를 클릭 할 때 할당 할 수 있습니다. 해결 방법은 해결책입니다.

@property (assign, nonatomic) NSInteger a,b; 
@synthesize a,b;