我是 SwiftUI 的新手。 现在我需要在与列表页面绑定的编辑视图中使用@Binding var movie:Movie, 但是当我把它应用到下面的代码中时,错误就发生了。
android/app/debug/app-debug.apk
无法将“绑定”类型的值转换为预期的参数类型“Int”
那我该怎么办这个案子, 期待您的帮助。
顺便说一句,我怎么能像这样在“进度”中使用绑定类型,
Text("Current Progress: \($movie.grenzen * 100, specifier: "%.0f") %")
它还报告 Err,
无法将“Int”类型的值转换为预期的参数类型“Binding”
我遇到了另一个问题,因为我使用的是 movie.grenze。当我按下“递增进度”按钮时,进度条不会改变。
ProgressView("Progress", value: $movie.grenzen, total: 1)
希望有任何进一步的支持,
答案 0 :(得分:1)
绑定通常用于需要双向通信时,这意味着双方都需要能够修改值。在您列出的两种情况下,您实际上都不需要绑定。
例如,在您的第一种情况下,Text
不会编辑值 - 只是显示它。所以,不要使用 $
:
Text("Current Progress: \(movie.grenzen * 100, specifier: "%.0f") %")
同样,在第二种情况下,ProgressView
也不带 Binding
:
ProgressView("Progress", value: movie.grenzen, total: 1)
这里假设 movie.grenzen
是 Float
或 Double