【问题标题】:iOS 7 - UISlider thumbTIntColor does not changeiOS 7 - UISlider thumbTIntColor 不会改变
【发布时间】:2013-09-27 22:36:28
【问题描述】:

我正在尝试更改 UISlider 上拇指的颜色 - 但不知何故,它始终保持白色。更改条形本身的颜色似乎效果很好。

- (void)viewDidLoad
{
  [super viewDidLoad];
  // Do any additional setup after loading the view.
  self.redSlider.thumbTintColor = [UIColor redColor];
}

我错过了什么吗?

我还在这里找到了this Question,这表明它可能是一个错误 - 有什么想法吗?

【问题讨论】:

标签: uikit ios7 uislider


【解决方案1】:

是的,这是错误。 为了避免不准备虚拟图像,请使用此代码。

[s setThumbImage:s.currentThumbImage forState:UIControlStateNormal];
s.thumbTintColor = UIColor.redColor;

【讨论】:

  • 虽然这个 hack 有效,但它会将拇指图像更改为具有类似于旧 iOS 6 样式的 3D 效果。 iOS 7 应该有扁平化风格。
  • 这种方法在我的场景中不起作用(在 React Native 中)。如果我 setThumbImage 到我的 Images.xcassets 中的实际图像,那么它确实有效。 s.currentThumbImage 有什么替代品吗?
【解决方案2】:

您是否在 xib/storyboard 中设置了有关它的任何内容?

如果是而不是将其更改为 viewDidLoad,请尝试将颜色设置为

- (void)viewDidLayoutSubviews

如果有效,这是因为它是在从情节提要加载值之后调用的,而之前调用的是 viewDidLoad。

【讨论】:

  • 这个不行,自己试试,没有解决办法。它只是不会改变!
  • 它当时用它修复了我的项目,对不起,如果不适合你。
猜你喜欢
  • 1970-01-01
  • 2014-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多