2017-04-24 60 views
0

我有,当你点击它就会出现在按钮一个按钮 链接的pickerView ..ActionPickerView获取引起

我的问题是: 我不知道如何得到结果,并将其打印到textFiled我创建了..

如果我可以使按钮名称中的结果不需要文本提交将是伟大的!

这就是我做了迄今:

import UIKit 
import ActionSheetPicker_3_0 


class ViewController2: UIViewController { 

@IBOutlet weak var text1: UITextField! 
@IBAction func ssss(_ sender: Any) { 


    ActionSheetMultipleStringPicker.show(withTitle: "Multiple String Picker", rows: [ 
     ["One", "Two", "A lot"], 
     ], initialSelection: [1], 

      doneBlock: { 


      picker, indexes, values in 


      self.text1.text = ("\(values)") 

      /** 
      print("values = \(values)") 
      print("indexes = \(indexes)") 
      print("picker = \(picker)") 
      return 
**/ 

    }, 


      cancel: { ActionMultipleStringCancelBlock in return }, origin: sender) 


} 

回答

0

我想你在doneBlock犯了一个错误变量名称,而你是分配价值的文本字段。另外,请查看initialSelection参数。你提供了[1]这将选择整个阵列。右

ActionSheetMultipleStringPicker.show(
     withTitle: "Multiple String Picker", 
     rows: [["One", "Two", "A lot"]], 
     initialSelection: [1, 1], 
     doneBlock: { picker, indexes, values in 
     // self.text1.text = ("\(vslues)") 
     // should be 
     self.text1.text = ("\(values)") 
     }, 
     cancel: { ActionMultipleStringCancelBlock in return }, 
     origin: sender) 
+0

,这是我犯了一个错误..所有的事情,现在是好的,但结果我的直觉:optinal(<_ NSSingleObjectarray 0x618000013ce0>(二)) – Ahmed

+0

为什么它不只是(二)? – Ahmed

+0

因为'values'是可选的。你可以用'!'强制解包。 'self.text1.text =(“\(values!)”)'。我不会推荐这种方式,使用可选的绑定,例如'if if v = values {self.text1.text =“\(v)”}' – Rahul