SwiftUI:打造 Apple Music 风格的界面呈现
想在你的 Swift 应用中实现 Apple Music 那样的酷炫界面? UIPresentationController 就是你的秘密武器!这个强大的类可以让你完全掌控视图控制器的呈现方式,打造个性化的用户体验。
在本教程中,我们将带你一步步模仿 Apple Music 的 UI 风格,包括:
- 朦胧背景:  通过设置  
containerView.backgroundColor为半透明颜色,让用户在进行操作时仍然可以看到底层的内容。 - 卡片式设计:  利用  
presentationRect属性裁剪 presentedViewController 的边缘,营造出类似卡片的视觉效果。 - 灵动动画:  通过重写  
presentationTransitionWillBegin和dismissalTransitionWillBegin方法,你可以使用UIView.animate(withDuration:)等方法,为界面打开和关闭添加流畅自然的动画效果。 - 丝滑手势: 想要像 Apple Music 那样通过拖动返回?没问题!添加手势识别器并处理相关事件,就能轻松实现。
 
通过学习和运用 UIPresentationController 的强大功能,你将能够为你的应用打造更具吸引力和沉浸感的用户体验!
                            
                            swift-自定义UIPresentationController模仿AppleMusicUI的行为.zip
                            预估大小:98个文件
                        
                        
                        
                                
                                CardPresentationController-master
                                文件夹
                            
                                                        
                                
                                .gitignore
                                1KB
                            
                                                        
                                
                                CardPresentationController.xcodeproj
                                文件夹
                            
                                                        
                                
                                xcshareddata
                                文件夹
                            
                                                        
                                
                                xcschemes
                                文件夹
                            
                                                        
                                
                                CardPresentationController.xcscheme
                                3KB
                            
                                                        
                                
                                project.xcworkspace
                                文件夹
                            
                                                        
                                
                                xcshareddata
                                文件夹
                            
                                                        
                                
                                IDEWorkspaceChecks.plist
                                238B
                            
                                                        
                                
                                contents.xcworkspacedata
                                168B
                            
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                            
                            
                                                        
                                ...                            
                                                    
                                        
                                    文件大小:10.49MB
                                
                                
                                
                            
评论区