美文网首页iOS17适配指南
iOS17适配指南之其他细节

iOS17适配指南之其他细节

作者: YungFan | 来源:发表于2023-08-27 09:08 被阅读0次

    UIDocumentViewController

    新增视图控制器,用于显示与管理本地或者云端文档。

    import UIKit
    
    class ViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
        }
    
        override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
            let documentViewController = UIDocumentViewController()
            documentViewController.openDocument { _ in
                print("打开文档")
            }
            present(documentViewController, animated: true)
        }
    }
    

    UIHoverStyle

    UIView 增加了一个hoverStyle属性,可以设置鼠标移动到 UIView 之上的效果。

    import UIKit
    
    class ViewController: UIViewController {
        lazy var redView: UIView = {
            let view = UIView(frame: CGRect(x: 200, y: 200, width: 200, height: 200))
            view.backgroundColor = .red
            // iOS17新增UIHoverStyle,可以设置Hover的效果与形状(UIShape)
            let hoverStyle = UIHoverStyle(effect: .lift, shape: .capsule)
            // iOS17新增,鼠标移动到UIView之上的效果
            view.hoverStyle = hoverStyle
            return view
        }()
    
        override func viewDidLoad() {
            super.viewDidLoad()
    
            view.addSubview(redView)
        }
    }
    

    UIScrollView

    增加了属性allowsKeyboardScrolling表示是否根据连接的物理键盘的方向键而滚动。

    import UIKit
    
    class ViewController: UIViewController {
        lazy var scrollView: UIScrollView = {
            let scrollView = UIScrollView(frame: CGRect(x: 0,
                                                        y: 0,
                                                        width: UIScreen.main.bounds.width,
                                                        height: UIScreen.main.bounds.width))
            let imageView = UIImageView(image: UIImage(named: "img"))
            scrollView.addSubview(imageView)
            scrollView.contentSize = imageView.bounds.size
            // iOS17新增,默认为true
            scrollView.isScrollEnabled = false
            return scrollView
        }()
    
        override func viewDidLoad() {
            super.viewDidLoad()
    
            view.addSubview(scrollView)
        }
    }
    

    applicationIconBadgeNumber

    UIApplication 的applicationIconBadgeNumber属性被废弃,建议使用UNUserNotificationCenter.current().setBadgeCount()方法。

    import UIKit
    import UserNotifications
    
    class ViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
        }
    
        override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
            // iOS17之后设置角标,需要先授权
            // UNUserNotificationCenter.current().setBadgeCount(10)
            UNUserNotificationCenter.current().setBadgeCount(10) { error in
                if let error {
                    print(error)
                }
            }
        }
    }
    

    相关文章

      网友评论

        本文标题:iOS17适配指南之其他细节

        本文链接:https://www.haomeiwen.com/subject/wegpmdtx.html