У меня есть вид выбора, какие изображения.Я пытаюсь сделать границы невидимыми.Мне удалось избавиться от него, но когда я перемещаю сборщик, он все еще появляется, как показано на рисунке.
Я создал класс иприсвоил его виду выбора
import UIKit
class myPickerView: UIPickerView {
override func layoutSubviews() {
super.layoutSubviews()
self.layer.borderWidth = 0
self.subviews.forEach {
$0.layer.borderWidth = 0
$0.isHidden = $0.frame.height < 1.0
}
}
}
Код для просмотра:
import UIKit
class ShuffleViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {
@IBOutlet weak var label: UILabel!
@IBOutlet weak var shufflePicker: UIPickerView!
var pickerData: [String] = [String]()
var rotate: CGFloat!
let images = [UIImage(named:"Acceptance"),
UIImage(named: "loveimage"),
UIImage(named: "gratimage"),
UIImage(named: "successsmall"),
UIImage(named: "pos"),
UIImage(named: "rel"),
UIImage(named: "weal"),
UIImage(named: "heal2"),
UIImage(named: "confiden")]
override func viewDidLoad() {
super.viewDidLoad()
shufflePicker.delegate = self
shufflePicker.dataSource = self
}
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
let myImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
myImageView.image = images[row]
return myImageView
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return 6
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> UIImage? {
return images[row]
}
func pickerView(_ pickerView: UIPickerView, rowHeightForComponent component: Int) -> CGFloat {
return 70
}
Есть ли способ полностью удалить границу?Мне нравится исчезновение изображений, но эта линия действительно беспокоит меня.Изменение высоты строки не помогло.