【问题标题】:Delayed response when changing label text (Swift)更改标签文本时的延迟响应(Swift)
【发布时间】:2016-01-16 21:03:38
【问题描述】:

我的问题是,当 imageFound == false 时,它​​会打印出“No Results!!!”立即,但标签文本更改需要 15 秒。我不知道为什么这会滞后,但我需要帮助尝试 i=将其降低到 5 秒或更短的范围内。

代码如下...

if let textFieldContent = textField.text{
        do {

            try WikiFaceRec.faceForPerson(textFieldContent, size: CGSize(width: 200, height: 250), completion: {(image:UIImage?, imageFound:Bool!) -> ()  in
                if imageFound == false{
                    self.faceImageView.alpha = 0
                    self.realLoadingLbl.text = "No Results Found. Check your spelling and try again."
                    print("NO RESULTS!!!!!")

                }
                if imageFound == true{
                   self.realLoadingLbl.alpha = 0
                    dispatch_async(dispatch_get_main_queue(), {() -> Void in
                        self.faceImageView.image = image

                        self.faceImageView.alpha = 1
                        WikiFaceRec.centerImageViewOnFace(self.faceImageView)
                    })

                }
            })
        } catch WikiFaceRec.WikiFaceError.CouldNotDownloadImage {
            print("Wikipedia not currently open")

        } catch {
            print("error")
            self.faceImageView.alpha = 0
            self.realLoadingLbl.text = "No Results Found. Check your spelling and try again."
            print("NO RESULTS")
        }
    }
    return true
}

下面的代码带有 self.realLoadingLbl.text = "未找到结果。请检查您的拼写并重试。"是需要一点改变的部分。是的,再次“没有结果!!!”立即打印。

if imageFound == false{
    self.faceImageView.alpha = 0
    self.realLoadingLbl.text = "No Results Found. Check your spelling and try again."
    print("NO RESULTS!!!!!")
}

【问题讨论】:

    标签: xcode swift uiimageview wikipedia lag


    【解决方案1】:

    dispatch_async而言,您必须处理类似于true 情况的imageFound==false 情况:

    if !imageFound {
        dispatch_async(dispatch_get_main_queue()) {
            self.faceImageView.alpha = 0
            self.realLoadingLbl.text = "No Results Found. Check your spelling and try again."
            print("NO RESULTS!!!!!")
            self.faceImageView.alpha = 0                      
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2015-06-29
      • 2017-02-27
      • 1970-01-01
      • 2016-05-29
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 1970-01-01
      • 2012-06-04
      相关资源
      最近更新 更多