TexturedPopoverBackgroundView
TexturedPopoverBackgroundView 是 UIPopoverBackgroundView 的变体,支持纹理背景、圆角等功能。
安装
Cocoapods
pod 'TexturedPopoverBackgroundView`
用法
import UIKit
import TexturedPopoverBackgroundView
class ViewController: UIViewController {
func customize() {
TexturedPopoverBackgroundView.setBorderColor(.green)
TexturedPopoverBackgroundView.setBorderWidth(1)
TexturedPopoverBackgroundView.setBackgroundImageGetter { UIImage(named: "popover-bg")! }
}
override func viewDidLoad() {
super.viewDidLoad()
customize()
}
func showMyControllerAsPopover() {
let rect: CGRect = .zero
let vc = UIViewController()
vc.view.backgroundColor = UIColor(white: 1, alpha: 0.5)
vc.modalPresentationStyle = .popover
let popoverController = vc.popoverPresentationController!
popoverController.sourceRect = rect
popoverController.sourceView = view
popoverController.popoverBackgroundViewClass = TexturedPopoverBackgroundView.self
present(vc, animated: true, completion: nil)
}
}
自定义
- borderWidth
- borderColor
- cornerRadius
- backgroundImageGetter
- arrowBase
- arrowHeight
**注意**:自定义功能仅针对具体类有效 - 如果您使用继承,则您的类将只存储自己使用的属性。因此,您应该对您创建的所有类进行自定义。
class MyClass1: TexturedPopoverBackgroundView {}
class MyClass2: TexturedPopoverBackgroundView {}
class MyClass3: TexturedPopoverBackgroundView {}
func customize() {
let value: CGFloat = 10
TexturedPopoverBackgroundView.setCornerRadius(value)
MyClass1.setCornerRadius(value)
MyClass2.setCornerRadius(value)
MyClass3.setCornerRadius(value)
}
作者
- Сiarhei Ladzeika [email protected]
许可证
该项目采用MIT许可证 - 有关详细信息,请参阅许可证文件