The view can be slanted and added dynamically. You may or may not fill the top and bottom views.
PKCSlice
written in Swift 4. Compatible with iOS 8.0+
Tags is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'PKCSlice'
setting
view
done!
import PKCSlice
let sliceView = PKCSlice()
self.view.addSubview(sliceView)
AutoLayout Example
sliceView.translatesAutoresizingMaskIntoConstraints = false
self.view.addConstraint(NSLayoutConstraint(
item: self.view,
attribute: .leading,
relatedBy: .equal,
toItem: sliceView,
attribute: .leading,
multiplier: 1,
constant: 0)
)
self.view.addConstraint(NSLayoutConstraint(
item: self.view,
attribute: .trailing,
relatedBy: .equal,
toItem: sliceView,
attribute: .trailing,
multiplier: 1,
constant: 0)
)
self.view.addConstraint(NSLayoutConstraint(
item: self.view,
attribute: .top,
relatedBy: .equal,
toItem: sliceView,
attribute: .top,
multiplier: 1,
constant: 0)
)
self.view.addConstraint(NSLayoutConstraint(
item: self.view,
attribute: .bottom,
relatedBy: .equal,
toItem: sliceView,
attribute: .bottom,
multiplier: 1,
constant: 0)
)
done!
inclination
sliceView.inclination = 100
sliceView
// Returned as an array of PKCSliceView
sliceView.sliceViewArray//get-only
// Make Array in colors
sliceView.hexColors = "e2e2e2,000000"
// SliceView Fill top
sliceView.isTopFill = true
// SliceView Fill bottom
sliceView.isBottomFill = true
// topSliceView
sliceView.topSliceView = PKCSliceView()
// bottomSliceView
sliceView.bottomSliceView = PKCSliceView()
// Make Simply topSliceView
sliceView.topHexColor = "e2e2e2"
// Make Simply bottomSliceView
sliceView.bottomHexColor = "e2e2e2"
append
sliceView.append(PKCSliceView())
sliceView.append(contentsOf: [PKCSliceView(), PKCSliceView()])
remove
sliceView.removeAll()
redraw
// ReDraw
sliceView.redraw()
class ViewController: UIViewController{
override func viewDidLoad() {
super.viewDidLoad()
let sliceView = PKCSlice()
sliceView.delegate = self
}
}
extension ViewController: SliceViewDelegate{
// sliceView Touch
func sliceTouchAction(_ slice: PKCSlice, sliceView: PKCSliceView, index: Int) {
}
// sliceTopView Touch
func sliceTopTouchAction(_ slice: PKCSlice, sliceView: PKCSliceView) {
}
// sliceBottomView Touch
func sliceBottomTouchAction(_ slice: PKCSlice, sliceView: PKCSliceView) {
}
}
PKCSliceView Customize
MAKE CustomSliceView.xib &
import UIKit
import PKCSlice
class CustomSliceView: PKCSliceView {
@IBOutlet private weak var imageView1: UIImageView!
@IBOutlet private weak var imageView2: UIImageView!
override func awakeFromNib() {
super.awakeFromNib()
self.imageView1.contentMode = .scaleAspectFill
self.imageView2.contentMode = .scaleAspectFill
self.imageView1.clipsToBounds = true
self.imageView2.clipsToBounds = true
self.imageView1.image = UIImage(named: "1.png")
self.imageView2.image = UIImage(named: "2.png")
}
}
guard let sliceView = Bundle.main.loadNibNamed("CustomSliceView", owner: self, options: nil)?.first as? CustomSliceView else{ return }
self.sliceView.append(sliceView)
pikachu987, [email protected]
Tags is available under the MIT license. See the LICENSE file for more info.