突出显示uitableviewcell特定时间

时间:2014-06-18 04:14:35

标签: ios uitableview highlighting

如何在不选择的情况下仅在特定时间段内突出显示uitableviewcell?我需要保持一个单元格突出显示假设3秒,然后它被突出显示。基本上我正在开发一种书籍类型的应用程序,其中单元格与音频同步。我已经使用文本填充了tableviewcells,并且我还有时间保持单元格突出显示多长时间。

2 个答案:

答案 0 :(得分:0)

用于设置UITableViewCell突出显示状态的API为setHighlighted:animated:,因此假设您只需要一个简单的突出显示,该工作已完成一半。

使用UITableViewDelegate方法tableView:willDisplayCell:forRowAtIndexPath:,通过您在子类中定义的某种方法通知单元格它已变为可见。只要您希望单元格保持突出显示,该方法将使单元格突出显示自己并启动计时器。当计时器触发时,使单元格移除突出显示。

如果单元格滚出视图,您当然必须防止计时器保持活动状态,因此在prepareForReuse:

期间使计时器无效并重置突出显示状态

答案 1 :(得分:0)

我认为你应该制作自定义的UITableViewCell类。初始化单元格时,请使用具有特定时间间隔的NSTimer。创建一个自定义方法并将其作为选择器(在自定义单元格类中)下面的NSTimer方法传递 -

[NSTimer timerWithTimeInterval:(NSTimeInterval)秒target:(id)target selector:(SEL)aSelector userInfo:(id)userInfo重复:(BOOL)重复]

在选择器方法中,您可以设置tableViewCell背景颜色以突出显示它。