加速标签iOS中的文本更改

Tem*_*emp 2 iphone tcp nsstring ios

  • 我的程序有效
    1. 使用CocoaAsyncSocket(TCP)发送字节
    2. 得到响应(字节数据)
    3. 将字节数组更改为有效数据(int/nsstring/etc)
    4. 用它来改变标签文本(步骤3)

我放了一个NSLog并观看了.日志显示几乎快,我的功能(更改标签文本)运行良好.但是,我可以在模拟器上看到更改标签的文本大约4~5秒后再调用函数.

我的第一个方法就是这个

  • 获取一个字节数组 - 拆分为nsdata - 更改为nsstring - 输入数组 - 获取字符串 - 添加子字符串(如'000%'或'000 sec') - 更改标签文本

第二是

  • 得到一个字节数组 - 拆分 - 更改为nsstring - 调用一个函数(添加子字符串 - 更改标签文本)

那么......我怎样才能提高它的变化速度?

lna*_*ger 5

更改标签文本应该"几乎立即"发生,并且当它花费这么长时间时,通常是由于不更新主线程上的标签文本.它是一个UIKit对象,因此只能在主线程上进行修改.

使用:

dispatch_async(dispatch_get_main_queue(), ^{
    self.label.text = myString;
});
Run Code Online (Sandbox Code Playgroud)