我试图使一个侧转连接到一个变量"Cannot invoke initializer for type " Int " with an argument list of type '(_)' "



我正在为学校项目制作应用程序,这是用户可以用手指画的手指画家。我正在制作一个滑块,以更改其线路的大小,然后使用该值作为大小。但是,我遇到了"无法调用类型" Int"的初始化器,其中包含类型'(_('的参数列表。我已经研究了,但找不到解决方案。错误发生在随着变化的线路上:

class ViewController: UIViewController {
@IBOutlet weak var canvas: UIImageView!
var start: CGPoint?
var size: Int = 5
override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}
@IBAction func clearImage(_ sender: UIBarButtonItem) {
    canvas.image = nil
}
@IBAction func changeSize(_ sender: UIBarButtonItem) {
    var size = Int(sender.value)
}

嗨@Beran您正在尝试从uibarbuttonitem.not uislider

获得值
@IBAction func changeSize(_ sender: UISlider) {
    var size = Int(sender.value)
}
  1. 在更改func中,您具有UibarbuttonItem类型的参数发件人,而不是Uislider。
  2. 在这种方法中,您创建了一个新的变量"大小",该变量从未使用过。我认为,您不应该创建一个新的var,而不是仅仅为了使用"大小"属性。

@IBAction func changeSize(_ sender: UISlider) { size = Int(sender.value) }

相关内容

最新更新