在swift 3中有多项选择的下拉菜单

时间:2016-12-10 05:24:14

标签: drop-down-menu swift3

我希望dropdown中的swift3菜单像我一样分层搜索,但没有发现任何多选的下拉菜单。我发现目标c下拉我想要这样...我已经创建了自己的但是如果找到任何豆荚而不是它易于实现,因为我今天想要它

我在Objective-C

中找到了

enter image description here

请建议我

提前谢谢

3 个答案:

答案 0 :(得分:0)

1.创建子VC并在按下按钮时使用此代码,打开下拉列表。

注意:别忘了降低chil VC的视图的opcacity

  1. 将CategoryVC添加为子VC。
  2. 我添加了标签左侧的图像,但您可以根据需要添加标签右侧。

    enter image description here故事板视图

    输出视图enter image description here

    1. 使用标签和按钮创建标题,然后从下拉菜单中获取一个tableview。像这样定制单元格。您正在看到的标签的左侧框,它只是一个按钮,并在故障板上为dafault和选定状态提供图像。

    2. 在cellForRowAtIndexPath方法中,仅通过true和false管理选择和取消选择按钮状态。(显示用户图像是否已选中)或拍摄带刻度线的图像,使用属性隐藏/显示。

    3. 4在didSelectRowAtIndexPath方法中,将按钮的特定选定状态切换为选中且正常。或隐藏并显示图像。

      1. 现在,在完成按钮
      2. 上从父级移除您的子VC

        注意:要将数据从子VC传递到父VC,您必须使用委托协议和回调闭包。

        如果您需要任何其他帮助,可以询问。

答案 1 :(得分:0)

<View style={{flexDirection:'row',alignItems:'center',justifyContent:'center'}} >
            <Text style={divider}>English  </Text>
            {selectedIndex === 0 ?<Image
                    source={RIGHT_GREEN_ICON}
                    style={{width: 16, height: 16,right:20,position:'absolute'}}
                />
                : null
            }
    </View>,
    <View style={{flexDirection:'row' ,alignItems:'center',justifyContent:'center'}} >
            <Text style={divider}>हिन्दी  </Text>
            {selectedIndex ===1 ?<Image
                    source={RIGHT_GREEN_ICON}
                    style={{width: 16, height: 16,right:20,position:'absolute'}}
                />
                : null
            }
    </View>,

答案 2 :(得分:-1)

您可以将此第三方用作多项选择或单项选择 Drop Down

RSSelectionMenu

如何将其用于多重选择下拉列表作为操作表:

    func showMultiSelectionActionSheet(simpleDataArray:[String],textField:UITextField){
            let selectionMenu = RSSelectionMenu(selectionStyle: .multiple, dataSource: simpleDataArray) { (cell, name, indexPath) in
                cell.textLabel?.text = name
                cell.tintColor = #colorLiteral(red: 0.4669097662, green: 0.8560531735, blue: 0.3897160292, alpha: 1)
            }
            //customization selection of row
            selectionMenu.cellSelectionStyle = .checkbox

            // show as actionsheet
            selectionMenu.show(style: .actionSheet(title: nil, action: "Done", height: nil), from: self)

            //dismiss handler
            selectionMenu.onDismiss = { [weak self] selectedItems in
                textField.text = selectedItems.joined(separator:",")
                // perform any operation once you get selected items
            }
            // show message 'No data found'
            selectionMenu.showEmptyDataLabel()
        }