binding - 如何绑定静态字符串?
问题描述
例如,我有这个界面:
import SwiftUI
struct ContentView: View {
@Binding var statictext : String
var body: some View {
Text("My New Text: \(statictext)")
}
}
和这个类:
class Strings
{
public static var mytext = "MyText"
}
如何初始化 ContentView?我需要,当我更改 Strings.mytext = “new text” 的值时,界面中的文本变成“我的新文本:新文本”
PS:对不起我的英语)))))
解决方案
我不知道这是否是这个问题的正确答案,但你可以这样做,即使你觉得它对我来说有点脏。
import SwiftUI
class Strings
{
public static var mytext = "MyText"
}
struct ContentView: View {
@State var statictext : String {
willSet {
Strings.mytext = newValue
}
}
init() {
self._statictext = State(initialValue: Strings.mytext)
}
var body: some View {
VStack {
Text("My New Text: \(statictext)")
Button(action: {
self.statictext = "Test"
}) {
Text("Button")
}
}
}
}
推荐阅读
- python - windows平台上python 3中从.ui到.py的转换
- sql - SQL中带有条件的ROUNDUP函数
- ckeditor5 - 如何在 CKEditor 5 中更新元素()?
- javascript - 使用 JavaScript 显示和隐藏内容
- android - 如果其他情况,Android kotlin 导入合成
- android - 使用 Glide 从 Fragment 中的 RecyclerView 向 Activity 传递数据时应用程序崩溃
- string - 如何将“Hello World”加载到 WebAssembly 的 `.data` 部分浪费
- xamarin - 手势识别器在 Xamarin.Forms Slider 中不起作用吗?
- mysql - 在 .NET Core 2、Mac OS、Visual Studio for Mac 上使用 MySQL:ArgumentOutOfRangeException:长度不能小于零
- php - 解析错误:语法错误,文件意外结束,期待 laravel 5.4 中的函数 (T_FUNCTION) 或 const (T_CONST) 并且不重复