Привет всем, я пытаюсь создать приложение в стиле бизнес-поиска и надеялся создать пользовательскую ячейку для отображения некоторой информации для пользователя.У меня есть ячейка для отображения всей информации, которую я пытаюсь дать, но формат отключен.Вот код, который я использую для создания ячейки.
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"CustomCell";
CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CustomCellView" owner:self options:nil];
#ifdef __IPHONE_2_1
cell = (CustomCell *)[nib objectAtIndex:0];
#else
cell = (CustomCell *)[nib objectAtIndex:1];
#endif
}
// Configure the cell.
NSDictionary *dict = [rows objectAtIndex: indexPath.row];
cell.bizNameLabel.text = [dict objectForKey:@"name"];
cell.addressLabel.text = [dict objectForKey:@"address"];
NSMutableString *detailed = [NSMutableString string];
[detailed appendString:[dict objectForKey:@"distance"]];
[detailed appendString:@"mi"];
cell.mileageLabel.text = detailed;
// determine the rating for the business
NSString *icontype = [dict objectForKey:@"rating"];
NSInteger rating = [icontype intValue];
UIImage *image;
// variable to change the color of the cell's background
UIView *bg = [[UIView alloc] initWithFrame:cell.frame];
// switch statement to determine the rating image to be displayed
switch (rating) {
case 1:
{
image = [UIImage imageNamed:@"1.png"];
bg.backgroundColor = [UIColor yellowColor];
break;
}
case 3:
{
image = [UIImage imageNamed:@"3.png"];
bg.backgroundColor = [UIColor orangeColor];
break;
}
case 5:
{
image = [UIImage imageNamed:@"5.png"];
//bg.backgroundColor = [UIColor redColor];
cell.backgroundColor = [UIColor redColor];
break;
}
default:
break;
}
[cell.ratingImage setImage:image];
cell.backgroundView = bg;
[bg release];
#ifdef __IPHONE_3_0
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
#endif
return cell;
}
Затем я создал макет в IB, чтобы он выглядел следующим образом ..
(Первые 2 проблемы были решены, яиспользовал неправильную переменную изображения для отображения изображения)
И когда выбрано, вы можете сказать, что вещи не в порядке
! [введите описание изображения здесь] [3]
В IB у меня размеры ячейки равны 320 на 80, а на вкладке «Отступ» я изменил класс на CustomClass.Я уверен, что упускаю из виду что-то тривиальное, но если бы кто-то мог бросить мне кость, я был бы благодарен.Я исправил проблему с изображением, которое не отображается там, где я хотел, но у меня все еще остаются проблемы с тем, что цвет фона не меняется, размер шрифта отображается по-другому, и когда ячейка выбрана, она перекрывает разделитель ячеек.,
Примечание: попытался включить снимки экрана, но, поскольку я новичок, ТАК не позволил мне.Я предоставил ссылку, где я поместил изображение выбранной ячейки, которая перекрывает разделитель ниже.
http://s1216.photobucket.com/albums/dd361/cabearsfan/?action=view¤t=screenshot2.png