【问题标题】:UISlider drag behaving strangely in iOSUISlider拖动在iOS中表现异常
【发布时间】:2014-01-31 05:04:13
【问题描述】:

我以编程方式添加到视图中的 UISlider 有一个奇怪的问题。我相信这个问题是 IOS7 引入的。

我没有使用任何自定义图像。

如下图所示,仅当我开始将轨道从最大值移动到最小值时才会出现,然后当我将其移回时它会消失。

这是我用来创建滑块的代码。

_brightnessSlider = [[UISlider alloc] initWithFrame:CGRectMake(size.width * .45,
                                                               size.height * .78,
                                                               size.width * .4,
                                                               size.height * .1)];

[_brightnessSlider setBackgroundColor:[UIColor clearColor]];
_brightnessSlider.minimumValue = 0.0;
_brightnessSlider.maximumValue = 1.0;
_brightnessSlider.continuous = YES;
_brightnessSlider.value = 1.0;
[_brightnessSlider addTarget:self action:@selector(changeBrightness:) forControlEvents:UIControlEventValueChanged];

[self.view addSubview:_brightnessSlider];

什么可能导致这种奇怪的行为?

【问题讨论】:

  • 我的滑块工作正常。此问题出在设备或模拟器上。
  • 在设备上。我无法在模拟器中进行测试,因为我必须使用的库之一不是为通用而编译的。
  • 我已经在设备上运行了您的代码,并且运行良好。我刚刚使用您的代码传递了一个固定框架,如下所示“UISlider* _brightnessSlider = [[UISlider alloc] initWithFrame:CGRectMake(100,20,120 ,40)];"

标签: ios objective-c user-interface uislider


【解决方案1】:

代码没有问题。问题是“Min Track Tint colour”。您的视图背景颜色可能与 MInTrackTintColor 匹配。

使用这个:

[_brightnessSlider setMinimumTrackTintColor: [UIColor blueColor]];

如果它不能解决您的问题,请告诉我...

【讨论】:

  • 太棒了!我只是将它设置为 lightGreyColor,它就会出现。
猜你喜欢
  • 2019-07-02
  • 2013-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多