2010-06-06 88 views
0

我正在重新使用Apple的AdvancedTableViewCells示例来创建自定义快速滚动的tableview。具体来说,我使用他们的CompositeSubviewBasedApplicationCell方法可绘制与drawRect设置标签并隐藏自定义UITableViewCell上的对象

一切工作的tableviewcell的内容,但你怎么隐藏自己的使用方法的标签或图像标签或设置标签?这样做对我来说很新(没有IB),所以如果事情很简单,我会提前道歉。

,设置单元格内容的代码是:

- (void)drawRect:(CGRect)rect 
{ 

[_cell.animalIcon drawAtPoint:CGPointMake(5.0, 5.0)]; 

[_cell.animalName drawAtPoint:CGPointMake(93.0, 25.0)]; 

_highlighted ? [[UIColor whiteColor] set] : [[UIColor colorWithWhite:0.23 alpha:1.0] set]; 
[_cell.animalDescription drawAtPoint:CGPointMake(100.0, 54.0) withFont:[UIFont boldSystemFontOfSize:13.0]]; 

[_cell.animalNameString drawAtPoint:CGPointMake(93.0, 5.0) withFont:[UIFont boldSystemFontOfSize:13.0]]; 

} 

回答

1

taghiddenUIView性质。由于你没有处理UIView的实例(你没有UILabels或UIImageViews,只是NSStrings或UIImages),它们没有tag属性。如果你想隐藏文本的特定部分,就不要在drawRect:中画出它。使用简单的if语句来测试您需要的任何条件,以确定文本是否应该绘制。

+0

感谢您的快速响应。问题出在我使用标签属性来决定哪个视图控制器推动基于'animalNameString'的值...有没有另一种方法,我可以做到这一点'didSelectRowAtIndexPath:'? – iwasrobbed 2010-06-06 20:34:57

+0

想通了,谢谢Ole – iwasrobbed 2010-06-06 22:31:34