2012-06-25 4 views
7

Ich versuche, die UIPickerView auf Schaltfläche klicken, klicken Sie auf. Meine Pickerview-ID wird zur Laufzeit erstellt, ich habe die Delegierten bereits festgelegt. Nach Googeln fand ichSo setzen Sie UIPickerView auf Index zurück: 0, iPhone

[pickerView reloadAllComponents]; 

Aber das macht meine app Absturz jedes Mal hier erreicht.

Objekt bei Index 0 ist "Wählen Sie aus der Liste" und dann die Elemente. Wenn auf die Schaltfläche "Senden" geklickt wird, möchte ich, dass die "Auswahl aus der Liste" oben auf meiner Beschriftung bleiben soll (ausgewählter Index: 0).

Hier ist mein Code

ViewDidload 

pickerView = [[UIPickerView alloc] init]; 
    pickerView.delegate = self; 
    pickerView.dataSource = self; 

    -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{ 
     return 1; 
    } 


// Total rows in our component. 
    -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{ 
     return [nameArray count]; 
    } 

// Display each row's data. 
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{ 
    return [nameArray objectAtIndex: row]; 
    } 

// Do something with the selected row. 

    -(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ 
     dlbl.hidden=YES; 
     NSLog(@"You selected this: %@", [nameArray objectAtIndex: row]); 
     [btnSelectDesigner setTitle:[nameArray objectAtIndex: row] forState:UIControlStateNormal]; 

    } 

und auf die Schaltfläche klicken:

-(IBAction)btnSubmitClicked:(id)sender{ 
[pickerView reloadAllComponents]; 
} 

Jede Idee, was ich falsch mache?

Dank

+3

Einige Code würde Debug besser helfen. –

Antwort

25
[picker reloadAllComponents]; 
[picker selectRow:0 inComponent:0 animated:YES]; 
5
//use this line for going at the top of the label index 0: 

[picker selectRow:0 inComponent:0 animated:YES]; 
+0

Auf Knopfdruck? gibt mir Absturz – FirstTimer

+1

Haben Sie Ihr Array zugewiesen ?? ist das erste Mal, es funktioniert gut ?? .. können Sie Ihren Crash-Log hier zeigen .. was genau passiert .. – Abhishek

3

Swift Version:

picker.selectRow(0, inComponent: 0, animated: true)

Verwandte Themen