ios - UIview 在调用 View Controller 时没有响应

标签 ios iphone swift uiview

我遇到了奇怪的事情,我有一个 uiviewcontroller,里面有一个带有 2 个 View 的 UIView,用于显示图形栏的错觉:

The UIVIEW with bars

现在问题是我第一次打开 View Controller 时没有任何反应,在切换到另一个 View 然后返回后,条形图没有升高。一切都很好,条形图升高了。 现在问题来了,ViewDidLoad 和 ViewWillApper 使用相同的函数,通过断点和 println,所有数据都到达 uiviewAnimation 以显示条的上升,但没有任何反应,除非重新加载 View

这是怎么回事?请启发我

 override func viewDidLoad() {
    super.viewDidLoad()


    TimeNow()

    InsertNetoToCircul()
    InsertSpendIntoCircul()
    Checking()
    AdvicesFunction()


}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)

    InsertNetoToCircul()
    InsertSpendIntoCircul()
    Checking()
    AdvicesFunction()


}


    func SpendBar(high : CGFloat,income:Float){

    if high < 1{
        OtzaotLabel.hidden = true
    }
    else{
        OtzaotLabel.hidden = false
    }
    if income < 1{
        LoLabel.hidden = true
    }
    else{
        LoLabel.hidden = false
    }


    SpendBarView.frame.origin.x = 38
    SpendBarView.frame.origin.y = 335

    SpendBarView.frame.size.width = 70

    // Calculate location in bar
    //Spendings
    var Mana:Int = (Int(high) / 500) * 30
    var Sher:Float! = ((Float(high) % 500) / 500 ) * 30

    if Rate{ Mana /= 2 }


    UIView.animateWithDuration(0.4, animations: {

        self.SpendBarView.frame.size.height = -CGFloat(Float(Mana) + Sher)

    })

    SpendBarView.backgroundColor = UIColor(red: 1.0, green: 0.4, blue: 0.4, alpha: 1)}

最佳答案

您不能在 viewDidLoad 中执行动画,因为 View 还不在界面中。 View 已加载;这意味着 View Controller 一个 View 。但 尚未添加到界面中。在将 View 添加到界面之前,您不能在 View 上执行动画;您甚至无法在与将动画添加到界面时相同的运行循环中对 View 执行动画。在尝试为其设置动画之前, View 必须已经在界面中,并在那里完全建立。

关于ios - UIview 在调用 View Controller 时没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36681317/

相关文章:

ios - 如何通过列名和数据类型获取值?

ios - 在 IOS 中过滤 JSON 数据中的子数据

iphone - 如何根据 UILabel 中的数字显示文本

ios - Swift 或 Objective C 中的垂直 View 寻呼机

ios - Swift 并发操作慢 2 倍

swiftUI:在 onAppear 中更改 @State 崩溃

ios - GameOver 屏幕位置 swift

ios - 使用 UIGraphics 组合两个图像时遇到问题,图像位置不正确

iphone - 如何将二进制数据转换为 NSData

iphone - iPhone 可本地化字符串的区域设置代码