Така или иначе, за да добавите хоризонтална и вертикална линия към UIView по едно и също време. Следният начин изглежда излишен.
var horizontalLineView : UIView = UIView(frame: horizontalLine)
var verticalLineView : UIView = UIView(frame: verticalLine)
Отговори:
0 за отговор № 1Не, вие го правите правилно. Това е най-сбит начин за създаване на UIView.
Потенциално можете да създадете доста просто разширение UIView, което създава няколко реда в едно обаждане, но всъщност не получавате много за това усилие.
extension UIView {
static func createLines(frames:CGRect...) -> [UIView] {
// create empty array for views
var lines:[UIView] = []
// loop over each frame provided
for frame in frames {
// create a UIView with that frame
lines.append(UIView(frame: frame))
}
// return the lines
return lines
}
}
let horizontalLine = CGRect(x: 0, y: 0, width: 100, height: 1)
let verticalLine = CGRect(x: 0, y: 0, width: 1, height: 100)
// create the UIViews with one or more frames
let lines = UIView.createLines(horizontalLine, verticalLine)