ios - 在 swift 3 中将数组转换为段标题

标签 ios json swift uisegmentedcontrol

我有一个数组

["Krishna", "Parin"]

我想在我通过 Storyboard创建的 UISegmentedControl 中使用它。

当我获取这种类型的值时,我厌倦了代码,它工作正常

  segment.updateTitle(array: [["Ve1"], ["Fa"], ["ven"]])

我使用下面的代码来实现:

extension UISegmentedControl {

func updateTitle(array titles: [[String]]) {

    removeAllSegments()
    for t in titles {
        let title = t.joined(separator: ", ")
        insertSegment(withTitle: title, at: numberOfSegments, animated: true)
    }

} }

最佳答案

你有两个选择

1)创建采用数组的新扩展

2) 转换数组

<小时/>

方法一

extension UISegmentedControl {

    func updateTitle(array titles: [String]) {
     removeAllSegments()
        for t in titles {
            insertSegment(withTitle: t, at: numberOfSegments, animated: true)
        }

     }
}

像这样传递数组

var array = ["Krishna", "Parin"]

segment.updateTitle(array:array )
<小时/>

方法二

如果您不想创建新扩展

根据当前扩展更新您的数组

var arrayOfArray:[[String]] = arrayNames.map{[$0]}

关于ios - 在 swift 3 中将数组转换为段标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46449252/

相关文章:

android - 从 json 获取数据时,Spinner 默认没有选择

ios - 什么是自动布局基线?

ios - 如何在 iTunes connect 中添加多个自动续订订阅?

iphone - 使 UIView 全屏显示的问题

ios - 如何在 iphone 中将日期格式从 mm/dd/yyyy 更改为 yyyy/mm/dd?

php - json 解码 - 从对象获取单个数组?

iphone - 如何使用 iPhone sdk 将 XML 字符串转换为 JSON

swift - 根据注释的属性设置注释的字形文本

ios - UICollectionView 动画单元格高度(快速)

ios - 应用程序包不包含有效的 IOS 标识符