TexturedPopoverBackgroundView 1.0.0

TexturedPopoverBackgroundView 1.0.0

Siarhei Ladzeika 维护。



  • Siarhei Ladzeika

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)		
}

作者

许可证

该项目采用MIT许可证 - 有关详细信息,请参阅许可证文件