问题将图像添加到UISegmentedControl

问题描述 投票:0回答:1

我在应用中进行了分段控制,我想显示图像而不是文本。

因此,我创建了UIImage数组,然后将该数组添加到分段控件项中。这些图像看起来像已添加,但显示正确。

[到目前为止我尝试过的事情

import UIKit

class TestView: UIView {


var segmentedControls : UISegmentedControl = {
    var items : [UIImage] = [UIImage]()
    items=[UIImage(named:"pokeball-1")!,UIImage(named:"pokeball-1")!,UIImage(named:"pokeball-1")!]

    var sc = UISegmentedControl(items: items)
    sc.tintColor = .blue
    sc.selectedSegmentIndex = 0
    sc.translatesAutoresizingMaskIntoConstraints = false;
    return sc
}()

override init(frame: CGRect) {
    super.init(frame: frame)
    setupViews()
    setupConstraints()
}
required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}

func setupViews(){
    addSubview(segmentedControls)
}

func setupConstraints(){
    let h = self.frame.height
    let w = self.frame.width
    segmentedControls.centerXAnchor.constraint(equalTo: self.centerXAnchor).isActive = true
    segmentedControls.centerYAnchor.constraint(equalTo: self.centerYAnchor).isActive = true
    segmentedControls.widthAnchor.constraint(equalToConstant: 200).isActive = true
    segmentedControls.heightAnchor.constraint(equalToConstant: 60).isActive = true

    }
}

我的代码的输出

Output Image

如何正确显示这些图像?请帮助我,谢谢所有答案。

swift uisegmentedcontrol
1个回答
0
投票

分段的控制图像是模板图像。如果要查看实际图像,请将图像渲染模式更改为.alwaysOriginal

© www.soinside.com 2019 - 2024. All rights reserved.