2010-12-18 12 views
0

Ich lade die Picker-Ansicht zum ersten Mal mit den Werten, die in Array gespeichert sind.Wie Sie die Picker-Ansicht mit neuen Daten neu laden

Ich verwende,

temp = [NSArray arrayWithObjects:@"Male", @"Female", nil]; 

- (NSString *)pickerView:addData titleForRow:(NSInteger)row 
           forComponent:(NSInteger)component { 
    return [temp objectAtIndex:row]; 
} 

Aber es zeigt die leere Picker Ansicht.

Antwort

0

Stellen Sie sicher, dass Sie den Delegaten und die Datenquelle festlegen?

Wenn nicht,

Sie haben diese

@interface YourView : UIViewController<UIPickerViewDelegate,UIPickerViewDataSource> 
+0

Ich kann meine Picker-Ansicht nicht dynamisch neu laden, indem ich alle Komponenten neu lade ... warum? –

+0

wie Sie neu laden? Verwenden Sie Ihre PickerView-Variable? Wenn ja, hast du es mit dem IB verlinkt? – KingofBliss

3
in Ihrer .h-Datei implementieren

Sie [somePickerVier reloadAllComponents]; versuchen Haben?

Auch die richtige Delegatmethode ist - (NSString *)pickerView:(UIPickerView *)pickerViewtitleForRow:(NSInteger)row forComponent:(NSInteger)component.

0

u haben Autorelease-Array unter Verwendung von so u haben diese zu behalten, wenn u

nicht wollen, u wie dieses

dann tun alloc und init dann

hinzufügen männlich, weiblich ...

temp = [[NSArray arrayWithObjects: @ "männlich", @ "weiblich", nil] behalten];

  • (NSString *) picker: addData titleForRow: (NSInteger) row forComponent: (NSInteger) -Komponente {

    return [temp objectAtIndex: row];

}

0

Sie benötigen eine Sache zu tun. Fügen Sie die folgenden Zeilen zu Ihrer Veranstaltung:

{ 

myPicker.delegete=self; 

myPicker.datasource=self; 

} 

Auch diese verwenden, wenn die Picker Ansicht Absturz durch eine Datenquelle hinzufügen.

oder

[myPicker reloadAllComponents];

Verwandte Themen