简体   繁体   中英

UIStackView subview contents visible during hiding animation

I am using a UIStackView for my layout. In that stack view, when I press a button I want to hide one of the subviews. That subview contains a couple buttons and a label. My issue is that during the hide animation, the buttons and label are visible until the vertical space from the subview is fully animated away.

Is there something I can do so that when I call subview.isHidden = true , the subview`s contents hide immediately at the beginning of the animation instead of at the very end of the animation?

use a custom stackView class . Use IBOutlets in the class to reference the buttons/text and write a function that hides your outlets when self.isHidden = true . Let me know if you need more explanation.

Besides hiding the buttons and content view with an animation you could try changing the background color from clear on the views inside the stackview to the same color as the background on your view. This still might not look great but it would be better.

Obviously animation would be something like the code below but give background color on your content views in the stackview a shot.

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM