UITableViewCell内的UISlider更新

时间:2009-08-10 01:17:12

标签: iphone uitableview uislider

我有一个包含UISlider控件的自定义UITableViewCell和一个显示滑块位置当前文本值的UILabel。我想在拖动滑块旋钮时更新标签。以下是基本要素。

的cellForRowAtIndexPath: 此例程获取数据并更新滑块值和与之关联的标签。

sliderValueChanged: 此例程读取滑块值更新数据。 然后调用[table reloadData],以便更新标签。

问题: 不知何故,reloadData正在中断更新流程。如果我替换NSLog而不是reloadData,我会得到一个很好的更新流,显示滑块的值。为了防止循环,我将测试设置为不设置滑块值或调用reloadData,除非值不同。这没有解决问题。

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:6)

问题是由[table reloadData]引起的,它似乎正在创建一个新的Cell对象,因此更新相同的滑块不起作用。正确的实现是将引用的单元格放在sliderValueChanged例程中并从那里设置标签。将标记设置为滑块以指示行,然后调用方法以获取具有索引路径的单元格。

答案 1 :(得分:1)

像这样的东西发生在我身上。转到构建设置并查找标记为“启用浮点库调用”的编译器。确保它已被禁用。看看这对你有帮助。