Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 更改UISlider的背景图像?_Ios_Uislider - Fatal编程技术网

Ios 更改UISlider的背景图像?

Ios 更改UISlider的背景图像?,ios,uislider,Ios,Uislider,我需要更改UISlider的背景,我的目标是创建UISlider,如下图所示: 我尝试了setBackgroundImage方法,但它就像滑块的框架一样 如何更改滑块的背景图像?您是否尝试了接受的答案?它做到了: UIImage *sliderLeftTrackImage = [[UIImage imageNamed: @"SliderMin.png"] stretchableImageWithLeftCapWidth: 9 topCapHeight: 0]; UIImage *sliderR

我需要更改
UISlider
的背景,我的目标是创建UISlider,如下图所示:

我尝试了
setBackgroundImage
方法,但它就像滑块的框架一样


如何更改滑块的背景图像?

您是否尝试了接受的答案?它做到了:

UIImage *sliderLeftTrackImage = [[UIImage imageNamed: @"SliderMin.png"] stretchableImageWithLeftCapWidth: 9 topCapHeight: 0];
UIImage *sliderRightTrackImage = [[UIImage imageNamed: @"SliderMax.png"] stretchableImageWithLeftCapWidth: 9 topCapHeight: 0];
[mySlider setMinimumTrackImage: sliderLeftTrackImage forState: UIControlStateNormal];
[mySlider setMaximumTrackImage: sliderRightTrackImage forState: UIControlStateNormal];

要将图像设置为滑块,可以使用setMinimumTrackImage、setMaximumTrackImage方法。根据您的要求,将两者设置为相同的图像

  UIImage *slider = [[UIImage imageNamed: @"Slider.png"] stretchableImageWithLeftCapWidth: 7 topCapHeight: 0];

  [mySlider setMinimumTrackImage: slider forState: UIControlStateNormal];
  [mySlider setMaximumTrackImage: slider forState: UIControlStateNormal];
有关更多信息,请查看以下链接:

1。在滑块下方添加具有相同尺寸的图像视图。设置您的多色图像

二,。使用透明图像作为滑块图像的左侧和右侧

   UIImage *clearImage = [[UIImage imageNamed:@"clearSliderBar.png"] stretchableImageWithLeftCapWidth:14.0 topCapHeight:0.0];
    [slider setMinimumTrackImage:clearImage forState:UIControlStateNormal];
    [slider setMaximumTrackImage:clearImage forState:UIControlStateNormal];

快速Swift 3已接受答案的翻译。在使轨迹图像透明之前,请记住在滑块后面添加自定义颜色/视图

let slider = UISlider()
let clearImage = UIImage().stretchableImage(withLeftCapWidth: 14, topCapHeight: 0)
slider.setMinimumTrackImage(clearImage, for: .normal)
slider.setMaximumTrackImage(clearImage, for: .normal)

发布您的代码,然后我们可以理解您不需要名为ClearLiderBar的显式透明图像,您只需执行[[UIImage alloc]init];图像将是透明的。谢谢@KaanDedeoglu的信息。我也将更新我的代码:-)