2

slider在表格的单元格中,这是我的滑块初始化代码:

UISlider* slider = [[UISlider alloc] init];
slider.continuous = NO;

slider.maximumValue = 2;
slider.minimumValue = 0.5f;
slider.value = 0.5f;

...
//put slider into cell

而且我不能移动这个滑块的拇指。为什么?请告诉我我做错了什么?

更新:如果将滑块的初始值设置为 0.500001f - 它可以工作!

4

4 回答 4

2

我怀疑这与这个问题直接相关,但我有一个类似的问题 - 我的滑块可以由我的程序设置它的值并且它会移动,但我无法拖动和移动它。事实证明,我为我的滑块子类编写了一个 trackRectForBounds 方法,但没有意识到此方法中的 (x,y) 位置是相对于作为滑块的 UIView 的——而不是包含视图。因此,我对轨道边界使用了与 initWithFrame 中的滑块相同的 CGRect。这将滑块轨道放在滑块视图之外。结果是滑块拇指无法拖动,并且轨道中的任何单击或滑块的视图都由包含视图处理。

如果我没有碰巧给滑块的视图赋予不同的背景颜色,就不会清楚轨道在视图之外,我不知道我会如何解决它。

当我将 trackRectForBounds 中的 (x,y) 更改为 (0, 0) 或完全删除覆盖 trackRectForBounds 时,一切正常。

也许这篇文章会帮助别人。

于 2010-12-02T19:51:02.080 回答
0

如果你的拇指没有激活滑块,很可能是因为它上面有一个 UIView。请张贴您的代码cellForRowAtIndexPath

于 2010-07-12T04:45:33.393 回答
0

确保您的最大滑块值设置为 > 0

于 2019-10-01T17:11:00.243 回答
0

这里没有足够的代码来估计问题。但我最近遇到了同样的问题,所以我只是告诉你我的问题是什么,希望它有所帮助。

基本上我只是将单元格分成不同的区域,具有不同的标签和视图。我发现如果我将滑块作为子视图添加到 UILabel 对象,滑块将不会移动。所以我先在同一个区域添加一个UIView,然后将UILabel和UIslider都添加到这个UIView中。现在一切正常。

于 2016-03-12T20:31:09.320 回答