将UIPicker视图设置为选定的字符串 - Swift

时间:2017-11-15 13:17:41

标签: swift uipickerview

有没有办法将UIPicker视图设置为选定的字符串?我的选择器视图是从数据库填充的,包含一组名称。我想在填充时将视图的值设置为选定的名称。行号每次都会改变。是否可以将值设置为匹配字符串?

以下是基于评论的尝试:

            var i : Int = 0
        while (nameArray[i] != assetArray[0].Owner)
        {
            i=i+1
        }
        scroll_owners.selectRow(i, inComponent: i, animated: true)

由于Index out of bounds,这会导致代码在尝试加载时中断。

1 个答案:

答案 0 :(得分:1)

您正在尝试正确的方法,但需要以另一种方式实施。 试试这个:

    let index = self.nameArray.index(where: {$0 == assetArray[0].Owner })
    scroll_owners.selectRow(index ?? 0, inComponent: 0, animated: true)

注意:传递inComponent的正确值,如果您的选择器视图只有一列,那么它将正常工作。