Я сделал 4 pickerviews, каждый из которых имеет 15 объектов, я реализовал все методы делегата. Возвращено 1 количество компонентов, количество строк также правильно, но для просмотра метода строки строка всегда 0, а pickerview не diplayed.help меня в поиске, где я неправ. Вот мой кодuipickerview не отображает данные с количеством строк> 0
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
NSLog(@"In Number Of Components Method\n");
int numberOfComponents = 1;
return numberOfComponents;
}
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent(NSInteger)component {
NSMutableArray* keysArray = [[NSMutableArray alloc] init];
NSMutableArray* valuesArray = [[NSMutableArray alloc]init];
DBManager* dbManger = [[DBManager alloc] init];
//companyName,city,category,postalCode
NSInteger count = 0;
switch (pickerView.tag) {
case 0:
if (![selectBusinessTextField.text isEqualToString:@""]) {
[keysArray addObject:@"category"];
[valuesArray addObject:selectBusinessTextField.text];
}
if (![selectCityTextField.text isEqualToString:@""]) {
[keysArray addObject:@"city"];
[valuesArray addObject:selectCityTextField.text];
}
if (![selectPostalCodeTextField.text isEqualToString:@""]) {
[keysArray addObject:@"postalCode"];
[valuesArray addObject:selectPostalCodeTextField.text];
}
if (keysArray.count) {
alternateArrayFoBusinessNamesArray = [dbManger fetchColumn:@"companyName" whereKeysAre:keysArray andValuesAre:valuesArray];
else
alternateArrayFoBusinessNamesArray = [dbManger fetchColumn:@"companyName"];
}
count = alternateArrayFoBusinessNamesArray.count;
break;
}
return count;
}
-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
UILabel* pickerItemLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, textFieldWidth, 40)];
[pickerItemLabel setFont:[UIFont fontWithName:appFontBold size:18]];
[pickerItemLabel setTextAlignment:NSTextAlignmentCenter];
switch (pickerView.tag) {
case 0:
{
NSString* name = [alternateArrayFoBusinessNamesArray objectAtIndex:row];
[pickerItemLabel setText:[alternateArrayFoBusinessNamesArray objectAtIndex:row]];
}
break;
case 1:
[pickerItemLabel setText:[citiesNamesArray objectAtIndex:row]];
break;
case 2:
if ([[businessTypesArray objectAtIndex:0]isKindOfClass:[NSDictionary class]])
[pickerItemLabel setText:[businessTypesArray objectAtIndex:row]];
else
[pickerItemLabel setText:[businessTypesArray objectAtIndex:row]];
break;
case 3:
[pickerItemLabel setText:[postalCodesArray objectAtIndex:row]];
break;
}
return pickerItemLabel;
}
Вы должны обеспечить некоторый код для того, чтобы сообщество, чтобы помочь вам, пожалуйста, обеспечить реализацию зрения сборщика. –
Пожалуйста, добавьте код, который вы используете –
Ваша реализация была бы полезна. –