2010-07-12 57 views
2

我在表的单元格有slider,这里是我的滑块的初始化代码:UISlider,大拇指不动

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

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

... 
//put slider into cell 

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

更新:如果将slider的初始值设置为0.500001f - 它的工作原理!

回答

0

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

+0

我不认为在上面的UIView滑块的问题,因为如果我设置滑块的初始值不等于它的最小值 - 拇指作品,直到它跟踪到最小值。 我用我自己的UITableViewCell子类,我觉得对的cellForRowAtIndexPath代码没有帮助,任何地方: - (UITableViewCell的*)的tableView:(UITableView的*)的tableView的cellForRowAtIndexPath:(NSIndexPath *)的cellForRowAtIndexPath { TableViewCellEx *了myCell = .. 。 ... //滑块创建 ... myCell.embeddedView = slider; } TableViewCellEx的embeddedView属性存储视图将作为子视图添加到单元 – iKiR 2010-07-12 06:04:48

+0

请帮助吗? – iKiR 2010-07-14 16:03:31

+0

用你的代码更新你的问题,它会帮助别人看到问题。 – coneybeare 2010-07-14 18:29:34

1

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

如果我没有碰到滑块的视图有不同的背景颜色,那么就不清楚该轨道是否在视图之外,我不知道我会如何解决它。

当我将trackRectForBounds中的(x,y)更改为(0,0)时,或者完全删除了覆盖trackRectForBounds,所有操作都完美无缺。

也许这个职位会帮助别人。

0

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

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