Swift UI – 分段选择控件(UISegmentedControl)
注:代码已升级至Swift4
选择控件的创建,并监听控件选择值
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//选项除了文字还可以是图片
let items = ["选项一", "选项二", UIImage(named: "g1")!] as [Any]
let segmented = UISegmentedControl(items:items)
segmented.center = self.view.center
segmented.selectedSegmentIndex = 1 //默认选中第二项
segmented.addTarget(self, action: #selector(ViewController.segmentDidChanged(_:)),
for: .valueChanged) //添加值改变监听
self.view.addSubview(segmented)
}
func segmentDidChanged(_ segmented:UISegmentedControl){
//获得选项的索引
print(segmented.selectedSegmentIndex)
//获得选择的文字
print(segmented.titleForSegment(at: segmented.selectedSegmentIndex))
}
}
选择控件中选项的添加和删除
//添加文字选项
segmented.insertSegment(withTitle: "新增选项", at:1, animated:true);
//添加图片选项
segmented.insertSegment(with: UIImage(named:"icon")!, at:1, animated: true)
//移除选项
segmented.removeSegment(at: 1, animated:true)
修改选项颜色(包括图片选项)
segmented.tintColor = UIColor.red
修改选项文字
segmented.setTitle("swfit", forSegmentAt:1)
修改选项图片
(1)下面代码图片会自动变成蓝色
segmented.setImage(UIImage(named:"icon"), forSegmentAt:2)
(2)使用下面代码,图标保留原来的颜色
segmented.setImage(UIImage(named:"icon")?.withRenderingMode(.alwaysOriginal), forSegmentAt:2)
修改选项内容偏移位置
segmented.setContentOffset(CGSize(width:10, height:7), forSegmentAt:1)
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/25/swift-ui-uisegmentedcontrol/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
Swift UI – 分段选择控件(UISegmentedControl)
注:代码已升级至Swift4
选择控件的创建,并监听控件选择值
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {……
文章目录
关闭
共有 0 条评论