gpt4 book ai didi

iphone - 在一个 UITableView 问题中调用两个不同的自定义单元格

转载 作者:可可西里 更新时间:2023-11-01 03:38:45 25 4
gpt4 key购买 nike

我创建了一个自定义单元格 FeatureCell,该行中有 5 个图像,将在主视图中调用,但是当我调用它时,我得到空行。那么请问我的问题出在哪里?

我在谷歌上搜索了自定义单元格,并使用了我必须在下面的代码中使用的方式,但没有任何反应。

这是我的 FeatureCell.h

@interface FeatureCell : UITableViewCell{

IBOutlet UIImageView *img1;
IBOutlet UIImageView *img2;
}

@property (nonatomic, retain) UIImageView *img1;
@property (nonatomic, retain) UIImageView *img2;
@end

这是我的 FeatureCell.m

@implementation FeatureCell

@synthesize img,img1,img2,img3,img4;
@end

这是我的 View Controller .m

- (NSInteger) numberOfSectionsInTableView:(UITableView *)tableView{

return 2;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

if (section == 0) {
return [objectCollection count];
}
else{
return 1;
}
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

static NSString* cellIdentifier1 = @"FeatureCell";

FeatureCell *cell1 = (FeatureCell*)[tableView dequeueReusableCellWithIdentifier:cellIdentifier1];


if (cell1 == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:cellIdentifier1 owner:nil options:nil];

cell1 = (FeatureCell*)[nib objectAtIndex:0];
}

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];


if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1
reuseIdentifier:CellIdentifier];

}


if ([indexPath section] == 0) {

containerObject = [objectCollection objectAtIndex:indexPath.row];

[[cell textLabel] setText:containerObject.store];

cell.selectionStyle = UITableViewCellSelectionStyleNone;

}
else{

cell1.img1.image = [UIImage imageNamed:@"shower.png"];
cell1.img2.image = [UIImage imageNamed:@"parking.png"];

}
return cell;
}

最佳答案

你需要做这样的事情:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1
reuseIdentifier:CellIdentifier];
}

containerObject = [objectCollection objectAtIndex:indexPath.row];
[[cell textLabel] setText:containerObject.store];
cell.selectionStyle = UITableViewCellSelectionStyleNone;

return cell;
} else {
static NSString* cellIdentifier1 = @"FeatureCell";

FeatureCell *cell1 = (FeatureCell*)[tableView dequeueReusableCellWithIdentifier:cellIdentifier1];
if (cell1 == nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:cellIdentifier1 owner:nil options:nil];
cell1 = (FeatureCell*)[nib objectAtIndex:0];
}

cell1.img1.image = [UIImage imageNamed:@"shower.png"];
cell1.img2.image = [UIImage imageNamed:@"parking.png"];

return cell1;
}
}

我可能有倒退的 if 条件,所以仔细检查一下。

关于iphone - 在一个 UITableView 问题中调用两个不同的自定义单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17711920/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com