我找不到方法或好的教程来解释如何将 UIViewController 拥有的变量(String 或 Int)的值传递给调用该视图的 SwiftUI 视图。
例如:
class ViewController: UIViewController {
var myString : String = "" // variable of interest
....
func methodThatChangeValueOfString(){
myString = someValue
}
}
// to make the view callable on SwiftUI
extension ViewController: UIViewControllerRepresentable {
typealias UIViewControllerType = ViewController
public func makeUIViewController(context: UIViewControllerRepresentableContext<ViewController>) -> ViewController {
return ViewController()
}
func updateUIViewController(_ uiViewController: ViewController, context: UIViewControllerRepresentableContext<ViewController>) {
}
}
Run Code Online (Sandbox Code Playgroud)
在 SwiftUI 中我会有
struct ContentView: View {
var body: some View {
ViewController()
}
} …Run Code Online (Sandbox Code Playgroud) 我定义了一种类型
type 'a sexp =
| E of 'a
| T of ( sexp<'a> * sexp<'a> );;
Run Code Online (Sandbox Code Playgroud)
例:
("this".(("是"."a").("s"."表达")))
是一个字符串的性别.
((1.5).2)
是一个int的性别.
我创建了一个函数tolist,给定一个表达式返回一个格式的列表.
let rec tolist expr =
match expr with
| Null -> [" "]
| E(x) -> [string x]
| T(l,r) ->
let l = tolist l
let r = tolist r
["("]@(l)@[" . "]@(r)@[")"];;
Run Code Online (Sandbox Code Playgroud)
val tolist:expr:obj sexp - > string list
我的问题是我想要'一个性别而不是一个obj sexp就像告诉我的那样.我哪里做错了?
一个电话就像那个叫(T(E("this"),E("是")));;
给定一个返回 a 的 API jsonl,我如何操作我获得的数据?
如果 API 给我这样的数据怎么办:
{"plate": "pizza", "quantity": 3}
{"plate": "pasta", "quantity": 2}
Run Code Online (Sandbox Code Playgroud)
{"plate": "pizza", "quantity": 3}
{"plate": "pasta", "quantity": 2}
{"plate": "hotdog", "quantity": 7}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到维护类型.jsonl而不是创建数组?
非常感谢您的帮助