iPhone4 iOS5自定义历史记录UITableViewCell [包含图片]是否可能?

时间:2011-11-20 16:16:00

标签: objective-c uitableview uiscrollview iphone-4 tiling

我正在尝试为我的应用添加一种方式,以易于理解的形式显示数据。我尝试用图表做这个,但发现它有点尴尬,所以我找不到更好的解决方案。

这是一个问题: 我想显示最多30天的数据,用户报告的事件根据时间线绘制。 事件应垂直对齐,以便在视觉上提供某些事件聚集在一起的参考。

为了解决这个问题,我想到使用具有比例背景的UITableView,并在该背景上叠加一组“引脚”,表示用户事件。当表格滚动时,事件将在另一个下方对齐,从而为历史事件发展提供良好的指示:  Custom UITableViewCell with pins indicating user events

我知道这可以通过UIScrollView完成,我可以在其中放置一系列标尺并将事件添加为引脚。为了有效地做到这一点,我将不得不使用Tiling,这是一种我没有太多经验的技术。

我很想知道UITableView是否可以实现这一点,其中已经为我完成了缓存和平铺。

我尝试将UIImageViews添加到tableViewCell.backgroundview,但这不会产生所需的结果。 我希望能够动态地向表格单元格添加任意数量的子视图。我可以通过向.xib添加一定的预定数量的图像,然后尝试重新定位它们来实现这一点。 ,但这似乎不是一个理想的解决方案。

我正在尝试使用UITableView做什么,还是应该放弃这些努力并使用平铺来查看UIScrollView?

谢谢!

1 个答案:

答案 0 :(得分:1)

是的,这应该是可能的。将标尺图像添加到UITableViewCell的背景中。

然后创建一个UITableViewCell的子类,它接受一个将放置在其视图中的引脚对象数组。引脚对象将包含引脚图像和刻度上的水平位置。然后在tableView dataSource方法的cellForRowAtIndexPath方法中,将tableViewCell的pin数组设置为正确的引脚数组(或NSSet)。

为了使它更轻巧,您可以在UITableViewCell子类drawRect方法中自己绘制引脚。然后你可以通过引脚的位置。

祝你好运