当前位置: 首页 > 面试题库 >

在Swift iOS中更新文本字段ui

吕高雅
2023-03-14
问题内容

我在使用iOS SDK 8的Swift时遇到一个问题

我使用了回调来获取数据背景,并且在获取数据时,我想设置一个文本字段值并更新屏幕。

这是我的代码:

@IBOutlet var txtTest: UITextField!

@IBAction func login() {
    let username = "aaa";
    let password = "bbb";
    var res = ServiceClient.login(username, password: password){
        (res:String, error:String?) -> Void in if(error == nil){
            self.txtTest.text = res;
        }
    }
}

运行此代码,将正确获取数据并且txtTest没有更新,但是当我点击txtTest时,将显示该值。那么有什么方法可以强制更新UI?或向UI线程发送消息?


问题答案:

每个人都想在Swift中进行UI更新时遇到的同一问题:永远不要在任何辅助线程中更新UI。这意味着任何带有闭包的东西。由于Swift大量使用闭包,因此人们对该问题的关注更多,但这并不是新问题。



 类似资料:
  • 问题内容: 我想在输入文本字段的同时更新我的​​文本区域,但是在输入时我延迟了1次击键,即当我按下一个键时,会显示上一个键。这是我的代码段 问题答案: 我不建议使用 只需在您的via中添加一个: 里面每个方法(,和)只需要一个电话设置你的文字通过: 这是我做的一个例子:

  • 我试图在我的文本字段中有一些预定义的文本,但是我不知道如何在单词之间添加新行。我试过了\n,但不起作用。 代码: 有人知道如何在每个单词之间添加换行符吗?我希望单词之间有一个分离,然后它会在稍后自动填充信息。

  • 我在flutter上开发一个应用程序,在主屏幕上我有一个按钮,打开另一个屏幕,这是在一个方法。在那个屏幕上,我想做一些计算,比如接受用户输入和更新文本字段,在单击按钮时,方法calculateAmount被称为更新变量total,它反映在文本字段上,但文本字段没有更新,它只在按键盘上完成时更新...如何才能完成这个任务。下面是我的代码:

  • 我想实现,让我们说温度单位转换器。我想使用AndroidMVVM和数据绑定来做到这一点,但我不知道如何。我有一个片段,它由三个编辑文本字段组成:摄氏度,华氏度,开尔文。更改其中之一后,其余部分应自动更新。在没有数据绑定的情况下,我将 TextWatcher 设置为每个字段,并在 onTextChanged 中执行所有验证和转换逻辑,并设置其他字段的值。在之前文本更改中,我删除了其他字段的侦听器,并

  • 假设我有两个字段F1和f2。我想将F1更新为。我可以在Mongo中使用一个更新命令吗?

  • 我在javaFX中有一个文本字段,在该字段中键入的任何内容都必须以蓝色显示,这可以通过css实现吗?如果是,那么如何?