2011-12-19 5 views
0

UIPickerView 두 구성 요소 값을 사용하고 싶습니다. 두 번째 구성 요소 값은 첫 번째 구성 요소 값에 따라 달라집니다. 예를 들어 첫 번째 구성 요소에서 그룹 1이 선택되고 두 번째 구성 요소에서 그룹 1 값이 표시되어야합니다.UIPickerView 2 구성 요소 값 iPhone

두 구성 요소에서 값을 선택한 후에는 값이 UITextField 또는 UILabel으로 지정되고 선택 도구가 숨겨집니다.

(메인 뷰에서 서브 뷰를 추가하여 UIPickerView을 추가했습니다).

튜토리얼 또는 예제를 참조하십시오.

어떤 도움이

을 알

- (NSInteger) numberOfComponentsInPickerView (UIPickerView *) pickerView

{

창 2;

}

- (NSInteger) pickerView (UIPickerView *) pickerView numberOfRowsInComponent (NSInteger) 성분 {

경우 (성분 == 0) { 창 [VGROUP 개수]; }

else { return [vehiclePickerList count]; }

}

- (는 NSString *) pickerView (UIPickerView *) pickerView titleForRow (NSInteger) 행 forComponent (NSInteger) 성분 {

switch (component) 
{ 
    case 0: 
     return [vGroup objectAtIndex:row]; 
     break; 
    case 1: 
     return [vehiclePickerList objectAtIndex:row]; 
     break; 
} 
return nil; 

}

+0

질문/무엇을 시도 했습니까? (표준 그래서 질문) – jv42

답변

1

작성한 코드를 입력하십시오. 구성 요소 관련 문제의 경우 - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView을 사용하십시오. 기본 선택기 자습서를 보려면 Basic Picker Tutorial을 방문하십시오.

사전의 배열에 구성 요소 1의 각 행의 해당 값 (구성 요소 2에 표시하려는 값)을 저장하고 거기에서로드 값을 가져옵니다.

+0

불행히도 코드가 삭제되었습니다하지만이 코드는 프로세스를 만들려고합니다. – AppDeveloper

+0

완벽하게 잘 했어. 자, 지금 직면하고있는 문제는 무엇입니까? pickerView 메소드가 호출되지 않으면 대리자를 추가하십시오. 데이터가 오지 않으면 데이터 소스를 추가하거나 vGroup 및 vehiclePickerList 객체/내용을 log에 확인하십시오. 두 번째 구성 요소의 새 항목 목록을 다른 첫 번째 구성 요소 행을 클릭 할 때마다 - (void) pickerView : (UIPickerView *) thePickerView didSelectRow : (NSInteger) row inComponent : (NSInteger) 구성 요소 메서드를 사용하여 vehiclePickerList의 내용을 적절히 변경하십시오. – utsabiem

+0

감사합니다. utsabiem :)하지만 코드가있는 곳에서 사이트에 대해 말해 주면 도움이 될 것입니다. – AppDeveloper

관련 문제