我有一个自定义UITableViewCell
。它有一个UIView
,它被添加到UITableViewCell
的“contentView”中。对于任何更新,我通过调用其“setNeedsDisplay
”并实现UIView的“drawRect”方法中的绘图来重绘UIView
。自定义UITableViewCell和UIView的LayoutSubviews
UITableViewCell
覆盖“willTransitionToState”并根据位掩码值,要求重绘UIView。因为我要求UIView
重新绘制自己,每次我做一个“滑动删除”,我看到细胞“闪烁”一会儿;即使是由于删除按钮而没有移动位置的文本也会因为一切正在重绘而发生闪烁。
我知道,一个可能的解决方案是不是从“willTransitionToState”呼“setNeedsDisplay”中的UIView,而是称之为“setNeedsLayout”,并有UIView的实施“layoutSubviews”。
这是我被困在:我怎样才能重新布局我UIView
,因为我UIView
为“绘制”(我用“drawInRect”和字符串和图像“drawAtPoint”方法)里面的一切。在右侧出现一个字符串,当“删除”按钮出现时(例如iPhone中的消息应用程序),我想隐藏该字符串。
我该如何做重新布局而不是重新绘制?
谢谢!!!