如何在forEach循环中传递变量函数

阿尔伯特·休斯

目标:

我目前正在编写一些代码来创建六边形网格,每个网格分别用渐变色。但是我对swiftUI还是很陌生,还不完全理解为什么我的代码不起作用。

码:

ForEach(0 ..< 11, id: \.self) { Xnum in
    ForEach(0 ..< 11, id: \.self) { Ynum in
        self.MyNewPath(in: CGRect(), Xcoord: Double(Xnum), Ycoord: Double(Ynum), Type: 1)
            .fill(RadialGradient(
                gradient: Gradient(colors: [Color.red, Color.blue]),
                center: .init(
                    x: self.gradientParametersX(Xpos: Double(Xnum)),
                    y: self.gradientParametersY(Ypos: Double(Ynum), Xpos: Double(Xnum))),
                startRadius: CGFloat(2.0),
                endRadius: CGFloat(70.0)))
            .gesture(
                TapGesture().onEnded {_ in
                    self.dataEditor(Xplace: Int(Xnum), Yplace: Int(Ynum))
                }
            )
    }
}

返回类型:

  • MyNewPath()- Path(六角形)
  • gradientParametersY() -- CGFloat
  • gradientParametersY() -- CGFloat

错误:

编译器无法在合理的时间内对这个表达式进行类型检查。尝试将表达式分解为不同的子表达式

出现错误周围的通过为中心XnumYnum以功能gradientParametersX()gradientParametersY()

例如,当我通过7.0和0.0时:

x: self.gradientParametersX(Xpos: Double(7.0)),
y: self.gradientParametersY(Ypos: Double(0.0), Xpos: Double(7.0))),

...没有错误。

他的脾气

尝试按如下所示的单独功能将网格项的创建分开(代码快照不可测试,因此仅演示示例而已)

    ...
    ForEach(0 ..< 11, id: \.self) { Xnum in
        ForEach(0 ..< 11, id: \.self) { Ynum in
            self.createItem(for: Xnum, Ynum: Ynum)
        }
    }
    ...

private func createItem(for Xnum: Int, Ynum: Int) -> some View {
    self.MyNewPath(in: CGRect(), Xcoord: Double(Xnum), Ycoord: Double(Ynum), Type: 1)
        .fill(RadialGradient(
            gradient: Gradient(colors: [Color.red, Color.blue]),
            center: .init(
                x: self.gradientParametersX(Xpos: Double(Xnum)),
                y: self.gradientParametersY(Ypos: Double(Ynum), Xpos: Double(Xnum))),
            startRadius: CGFloat(2.0),
            endRadius: CGFloat(70.0)))
        .gesture(
            TapGesture().onEnded {_ in
                self.dataEditor(Xplace: Int(Xnum), Yplace: Int(Ynum))
            }
        )
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在shell脚本中的for循环中传递变量值

来自分类Dev

传递变量的函数的onclick在foreach循环 - 谷歌Apps脚本

来自分类Dev

如何在for循环中将变量传递给函数

来自分类Dev

在erb循环中传递变量

来自分类Dev

在erb循环中传递变量

来自分类Dev

在foreach循环中将变量传递给函数

来自分类Dev

使用超时循环函数并传递变量

来自分类Dev

如何在“ .each”函数内传递变量?

来自分类Dev

如何在javascript的match函数中传递变量?

来自分类Dev

如何在Python中的函数之间传递变量

来自分类Dev

如何在linearSearch函数中传递变量i?

来自分类Dev

如何在javascript的match函数中传递变量?

来自分类Dev

如何在替换函数中传递变量

来自分类Dev

如何在函数或类中传递变量引用?

来自分类Dev

如何通过函数的函数传递变量

来自分类Dev

Ansible Playbook-在for循环中传递变量

来自分类Dev

jQuery ajax函数如何传递变量

来自分类Dev

如何使用Python从函数传递变量

来自分类Dev

如何从map()函数正确传递变量

来自分类Dev

如何在foreach循环中修改变量?

来自分类Dev

如何在Python中传递变量?

来自分类Dev

如何在js内部传递变量?

来自分类Dev

如何在powershell的foreach循环中运行函数列表?

来自分类Dev

Coffeescript,在这种情况下如何在函数中传递变量?

来自分类Dev

如何在PHP的onclick函数中以空格为参数传递变量

来自分类Dev

如何在ajax附加函数中传递变量(用剃刀插入html元素)?

来自分类Dev

如何在 wordpress/woocommerce $tabs 回调函数中传递变量?

来自分类Dev

如何在 draw.text() 函数而不是字符串中传递变量?

来自分类Dev

我应该如何在这个类中的函数之间传递变量?

Related 相关文章

热门标签

归档