UIPickerViewを正常に設定しましたが、データが最初に空の場合を処理するための最良の方法について疑問に思っています。現在の反復では、pickerdelegateに次のコードを使用します
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if ([flash_cards count])
{
return [[flash_cards allKeys] objectAtIndex:row];
}
return @"";
}
どこ
flash_cards = NSMutableDictionary *
スクロールしようとすると、論理的なインデックスアウトオブバウンズのエラーが発生します。空の配列の場合をどのように処理しますか?
編集:
また、コードの一部として、次のように実装しました
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponen: (NSInteger)component
{
return [flash_cards count];
}
#pragma mark Picker Data Source Methods
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}