ios - 如何通过单击添加按钮和在同一视图控制器中创建的删除按钮来添加和删除视图控制器中的段?
问题描述
import UIKit
class ViewController: UIViewController {
// @IBAction func Btndel(_ sender: Any) {
//}
var Str:String?
override func viewDidLoad() {
super.viewDidLoad()
let items = [Str]
let SegM = UISegmentedControl(items:items as Any as? [Any])
SegM.selectedSegmentIndex = 0
SegM.frame=CGRect(x: 70, y: 130, width: 100, height: 50)
SegM.layer.cornerRadius = 8.0
SegM.backgroundColor = .orange
SegM.tintColor = .white
self.view .addSubview(SegM)
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func Btnadd(_ sender: Any)
{
var Str = 0;Str += 1
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
如何通过单击添加按钮在同一视图控制器中创建删除按钮来添加和删除视图控制器中的段
解决方案
您可以通过 UISegmentedControl 的insertSegment方法插入段,您可以通过removeSegment方法删除段。让我举个例子。
我在情节提要中创建了 segmentController类及其 UI。下面是用户界面截图。在情节提要中,您可以看到两个按钮 Insert (+) 和 Remove (-) 以及 UISegmentedControl。插入按钮将在特定位置插入段,删除按钮将在特定位置删除段。
下面是segmentController类的代码。
class segmentController: UIViewController {
@IBOutlet weak var segementControl: UISegmentedControl!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func remove(_ sender: Any) {
segementControl.removeSegment(at: segementControl.numberOfSegments-1, animated: true)
}
@IBAction func insert(_ sender: Any) {
segementControl.insertSegment(withTitle: "\(segementControl.numberOfSegments+1)", at: segementControl.numberOfSegments, animated: true)
}
}
在上面的代码中,在插入按钮上单击新段将添加到 segementControl 的最后。在删除按钮上单击最后一个段将从段控制中删除。
希望能帮助到你。
推荐阅读
- html - 如何将 ap 标签放在两个 div 下?
- android - 在 android 启动时重新启用先前未在关机前通知的警报(非重复)
- python - 元组到列表中以查找最大值以及是否存在重复
- javascript - Discord oauth API inavlid_reuqest 错误。- express.js
- vue.js - 使用 Vue.js 在 PIXI 粒子容器中添加精灵
- python - 字典排序错误
- go - 从 LOOP 开始存储价值
- javascript - 接收错误:功能组件中的挂钩调用无效
- erlang - erlang-ls 是否支持变量的定义?
- c++ - 指针向量,无法访问元素