导航栏项目在真实设备上不可见

时间:2016-08-24 11:48:54

标签: ios swift uitableview uinavigationbar

今天我向navigationBar添加了模糊效果,看起来很棒。但是navigationBar中的按钮仅在我在模拟器上测试应用程序时可见,但在我在真实设备上测试时隐藏( iPhone 5s )。什么可能导致这样的问题?我不知道是什么导致这种情况,也许某些东西不符合某些原因?

我有两个带导航栏的tableviews。我只在第一个视图中设置模糊,但它也在第二个视图中设置模糊。

编辑:在第一个视图中,即使在真实设备上也可以看到所有按钮。

Edit2 :所有按钮都显示在真正的 iPhone 6 IOS 9.3.4 上,而不是真正的 iPhone 5s IOS 10 Beta 6 所以问题仅出在IOS 10上。

编辑3:该按钮不可见,但行为正确(返回第一个控制器)

像这样我设置模糊效果并在viewDidLoad内调用它:

func addBlurEffect(toView view:UIView?) {
        // Add blur view
        guard let view = view else { return }


        //This will let visualEffectView to work perfectly
        if let navBar = view as? UINavigationBar{
            navBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)
            navBar.shadowImage = UIImage()
        }


        var bounds = view.bounds
        bounds.offsetInPlace(dx: 0.0, dy: -20.0)
        bounds.size.height = bounds.height + 20.0


        let blurEffect = UIBlurEffect(style: .Dark)
        let visualEffectView = UIVisualEffectView(effect: blurEffect)

        visualEffectView.userInteractionEnabled = false
        visualEffectView.frame = bounds
        visualEffectView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight]
        view.insertSubview(visualEffectView, atIndex: 0)

    }

0 个答案:

没有答案