用一个UITableView的单元格覆盖空间

时间:2011-04-17 19:52:09

标签: iphone objective-c uitableview

UITableView的设计是这样的:

enter image description here

我想用一个小三角形制作我的细胞,就像在漫画书中一样。问题是,如何将三角形添加到我的自定义单元格的大小?如果我希望用户能够点击那个小矩形,则常见的矩形大小将不起作用。

我怎么能反过来呢?我希望三角形覆盖另一个单元格的空间,因此点击第一个单元格的小三角形,覆盖第二个单元格的矩形空间的一部分,将激活第一个单元格。这就是从细胞空间中减去一个小三角形。

1 个答案:

答案 0 :(得分:0)

不确定它是否可行,但建立在user697562的评论上,您可以尝试以下方法:

  1. 向表格单元格添加一个小UIView以表示小三角形
  2. 使用其变换属性旋转它,确保它与其框架一起具有正确的位置。
  3. 将UITapGestureRecognizer添加到UIView
  4. 将一个实例变量添加到视图中以保存它所在的单元格的indexPath(甚至是上面的单元格,因为它将与上面的单元格相关联)。这样,当手势识别器被触发时,您就知道您在哪一行。
  5. 编写与手势识别器关联的动作方法,以执行与tableView相同的操作:didSelectRowAtIndexPath:将对上述单元格执行此操作。
  6. 将UITableView的separatorStyle属性设置为UISeparatorStyleNone,这样它就不会在单元格之间绘制线条。如果这不起作用,只需将separatorColor属性设置为表格单元格的背景颜色。
  7. 沿顶部画一个边框&细胞的底部,占三角形。
  8. 祝你好运!如果您尝试,请告诉我它是否有效。