2017-03-08 63 views
0

我对我的布局使用UIStackView。在该堆栈视图中,当我按下按钮时,我想隐藏其中一个子视图。该子视图包含一对夫妇按钮和一个标签。我的问题是,在隐藏动画期间,按钮和标签是可见的,直到子视图的垂直空间完全被动画化。在隐藏动画中可见的UIStackView子视图内容

有什么我可以做的,所以当我打电话给subview.isHidden = true时,子视图的内容会立即隐藏在动画的开头,而不是在动画的最后?

回答

0

使用自定义stackView class。在class中使用IBOutlets来引用按钮/文本并编写function,当self.isHidden = true时隐藏您的网点。让我知道你是否需要更多的解释。

+0

呀这样的作品,我希望有一些设置,我丢失或东西,因为这似乎是对动画苹果公司的视图的JANK方式。 – NewShelbyWoo

+0

是的,它的不幸。你能否将标记答案解决? –

0

除了用动画隐藏按钮和内容视图外,还可以尝试将背景颜色从栈视图中的视图清除为与视图背景相同的颜色。这仍然可能不太好,但它会更好。

很明显,动画会像下面的代码一样,但在堆栈视图中为您的内容视图提供背景颜色。

UIView.animate(withDuration: 0.1, animations: { 
      //yourContentHoldingView.alpha = 0 
     }) 
相关问题