xcode 使用 Swift 更改 UISlider 图像
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/25116011/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Changing UISlider Images with Swift
提问by user2428168
I'm trying to change the default images for UISliders with Swift. I'm editing didFinishLaunchingWithOptions
in AppDelegate
.
我正在尝试使用 Swift 更改 UISliders 的默认图像。我正在编辑didFinishLaunchingWithOptions
中AppDelegate
。
In Objective C you would do this:
在目标 C 中,你会这样做:
UIImage *maxImage = [UIImage imageNamed:@"slider-track.png"];
[[UISlider appearance] setMaximumTrackImage:maxImage forState:UIControlStateNormal];
I've tried converting to Swift but have not been successful:
我试过转换为 Swift 但没有成功:
var maxImage:UIImage = UIImage (named:"slider-track.png")
UISlider.setMaximumTrackImage(image: maxImage, forState: UIControlStateNormal)
The first line is fine, but the second gives an error.
第一行没问题,但第二行报错。
What is the correct syntax for the second line?
第二行的正确语法是什么?
Thanks
谢谢
采纳答案by Kumar KL
let leftTrackImage = UIImage(named: "slider_blue_track")
customSlider.setMinimumTrackImage(leftTrackImage, forState: .Normal)
回答by Krishna Gawade
Changing UISlider thumb image with Swift
使用 Swift 更改 UISlider 拇指图像
yourSlider.setThumbImage(UIImage(named: "yourSlider.png"), forState: UIControlState.Normal)
yourSlider.setThumbImage(UIImage(named: "yourSlider.png"), forState: UIControlState.Highlighted)
回答by beatrizanso
SWIFT 3
斯威夫特 3
class Slider: UISlider {
@IBInspectable var thumbImage: UIImage?
// MARK: Lifecycle
override func awakeFromNib() {
super.awakeFromNib()
if let thumbImage = thumbImage {
self.setThumbImage(thumbImage, for: .normal)
}
}
}
回答by Basir Alam
For Swift 3:
对于 Swift 3:
mySlider.setThumbImage(UIImage(named: "icon_slider_thumb.png"), for: .normal)
回答by Faizal Nowshad KN
Changing images fast using slider in swift4
使用swift4中的滑块快速更改图像
class ViewController: UIViewController {
//var slider1 = UISlider()
var immgar = [UIImage(named: "bgspices.jpg"),UIImage(named: "index1.jpg"), UIImage(named: "index2.jpg"),UIImage(named: "index3.jpg"),UIImage(named: "index4.jpg"), UIImage(named: "woods.jpg")]
override func viewDidLoad() {
super.viewDidLoad()
}
@IBOutlet weak var imageview: UIImageView!
@IBOutlet weak var slider: UISlider!
@IBAction func slider1(_ sender: Any) {
print("changeImage method being called!!!!");
let slider1 = Int(slider.value)
imageview.image = immgar[slider1]
回答by Varsha Vijayvargiya
UIImage *img = [UIImage imageNamed:@"slider"];
UIImage *trackImg;
if (isiPad)
{
[[UISlider appearance] setThumbImage:img forState:UIControlStateNormal];
[[UISlider appearance] setThumbImage:img forState:UIControlStateHighlighted];
trackImg = [UIImage imageNamed:@"ipad_img.png"];
}
else
{
[[UISlider appearance] setThumbImage:[self imageWithImage:img scaledToSize:CGSizeMake(27, 27)] forState:UIControlStateNormal];
[[UISlider appearance] setThumbImage:[self imageWithImage:img scaledToSize:CGSizeMake(27, 27)] forState:UIControlStateHighlighted];
trackImg = [UIImage imageNamed:@"img.png"];
}
[[UISlider appearance] setMinimumTrackImage:trackImg forState:UIControlStateNormal];
[[UISlider appearance] setMaximumTrackImage:trackImg forState:UIControlStateNormal];