2013-05-25 3 views
0
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent: 

(NSInteger)component { 

if(thePickerView == self.countryPicker){ 

     self.countryLbl.text = [self.responseArray objectAtIndex:row]; 

     } 
} 

- (IBAction)countryDoneBtn:(id)sender { 

    // Picker first row selected on done button 

    [self.countryLbl setText:[NSString stringWithFormat:@"%@", [self.responseArray 

objectAtIndex:[self.countryPicker selectedRowInComponent:0]]]]; 

    [self myViewDown:self.countryView]; 

    [self.durationView removeFromSuperview]; 

    //[post selectState:[self.responseArray objectAtIndex:row ]]; 
} 

내가이 "[post selectState:[self.responseArray objectAtIndex:row]];"objectAtIndex에 액세스하는 방법 : indexpath.row xcode?

을하고 싶지만이 "- (IBAction)countryDoneBtn:(id)sender"

방법 "objectAtIndex:row"여기에 액세스 할 수 없습니다.

하십시오 친구 내가이 IBAction를에서 사전에

감사를 행에 액세스 할 수있는 방법을 내가 아이폰 개발에 새로운 해요 당신의 도움이 필요

+0

하나 개의 전역 변수를 가지고 피커 선택된 행의 값을 설정하고 그 변수를 사용합니다. – Balu

+0

@Sunny 고맙습니다. –

+0

행 대신 [self.countryPicker selectedRowInComponent : 0]을 사용하지 않는 이유는 무엇입니까? –

답변

0

변수를 사용할 수없는 저를 도와 행하기 때문에은 피커 뷰의 didSelectRow : inComponent 대리자 메서드에서만 전달됩니다.

당신이 시도한 바에 따라, 당신은 이미 국가의 텍스트를 설정하는 데 사용한 selectedRowInComponent 메서드를 사용하여 선택기의 선택된 행을 가져올 수 있습니다.

그래서, 당신의 responseArray에서 개체를 얻기 위해 같은 방법을 사용하십시오

NSInteger selectedRow = [self.countryPicker selectedRowInComponent:0]; 
[post selectState:[self.responseArray objectAtIndex:selectedRow]];