在视图Swift 5中追加一个值
我有一个变量叫UYEADST。我将从数据库中提取的数据添加到此变量。将数据添加到变量并提取数据是没有问题的,用print输出也没有问题。但是当我在viewDidLoad中提取变量UYEADST时,它似乎是一个空值。有什么问题在视图Swift 5中追加一个值,swift,Swift,我有一个变量叫UYEADST。我将从数据库中提取的数据添加到此变量。将数据添加到变量并提取数据是没有问题的,用print输出也没有问题。但是当我在viewDidLoad中提取变量UYEADST时,它似乎是一个空值。有什么问题 class profilViewController: UIViewController { var bilgiUYEADST : String = "" func bilgiUYEAD(){ let client = S
class profilViewController: UIViewController {
var bilgiUYEADST : String = ""
func bilgiUYEAD(){
let client = SQLClient.sharedInstance()!
client.connect("...", username: "...", password: "...", database: "...") { success in
client.execute("SELECT form_adsoyad FROM uzaktanptomg_db.omg_user.ie_form WHERE form_no LIKE '\(self.form_no)'", completion: { (_ results: ([Any]?)) in
for table in results as! [[[String:AnyObject]]] {
for row in table {
for (_, value) in row {
if let intVal = value as? String {
self.bilgiUYEADST = intVal
}} }}
DispatchQueue.main.asyncAfter(deadline: .now()) { [weak self] in
} client.disconnect() }) } }
override func viewDidLoad() {
super.viewDidLoad()
if passwordKeychain != nil {
form_no = passwordKeychain!
}
view.backgroundColor = .white
bilgiUYEAD()
emailLabel.text = (bilgiUYEADST)
}
在
viewWillApper
中尝试相同的操作。这可能是因为代码正在异步运行。您建议我怎么做@Chirag90一种方法是在bilgiUYEAD
函数中添加一个完成块,然后尝试在完成块中执行其余代码。您应该将其添加为下面的答案。