UIImageView根本不会出现在自定义的UITableViewCell中
我有一个表格单元,我以编程方式添加了子视图。所有的文本子视图都可以正常工作,但我无法获得图像子视图。UIImageView根本不会出现在自定义的UITableViewCell中
您会注意到我将背景颜色设置为黑色。这只是为了向我表明子视图确实正在初始化并正确定位在单元格内。当我删除背景颜色时,没有任何内容。
此外,细胞风格是UITableViewCellStyleDefault,但我不认为这是适合自定义子视图。我希望图像位于右侧,这就是为什么我不使用单元格提供的标准imageView
属性。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
// ... add textual views ...
UIImageView *img = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"clock.png"]];
img.frame = CGRectMake(271.0f, 10.0f, 19.0f, 22.0f);
img.backgroundColor = [UIColor blackColor];
[cell addSubview:img];
}
// ... more code ...
return cell;
}
您的代码在一定程度上看起来不错。我在代码中创建自己的UITableViewCells时遇到的一个问题是,我正在创建像您一样的变量的单元格,但您不应该这样做。
你应该做的是创建单元格,然后设置变量。如果单元格不同,则应使用不同的重用标识符。希望这是有道理的,如果不让我知道,我会更新。
我不确定你指的是哪些变量;在我的例子中有好几个。 :)你可以指定确切的哪些? – thebossman 2010-09-13 05:54:41
该图像。你要返回的每个单元格都有一个时钟图像 – Rudiger 2010-09-13 06:03:46
您确定clock.png已添加到您的项目中吗? – tidwall 2010-09-13 04:15:39
是的。它在我的项目中嵌套在一个子组中,但这对其他图像没有任何影响。当我通过IB中的ImageView对其进行设置并使用IB制造的单元(由于完全不同的原因我现在无法完成)时,图像可以正确显示。 – thebossman 2010-09-13 05:53:31
你对自定义单元格的引用在哪里? – Sharme 2012-01-09 13:03:35