Я создаю тестовое приложение, чтобы увидеть, каково это использовать SwiftUI, и я хочу, чтобы у моего тестового приложения был собственный вид, представляющий собой сетку из перпендикулярных линий, с интервалом, указанным в качестве переменных состояния.
Однако я не могу понять, как это сделать в системе пользовательского интерфейса, которая, кажется, не имеет пользовательских методов рисования.
import SwiftUI
struct GridBackgroundView : View {
@State var horizontalSpacing: CGFloat = 48
@State var verticalSpacing: CGFloat = 48
@State var anchor: Anchor<CGPoint>.Source = .center
var numberOfHorizontalGridLines: UInt {
return // Something?
}
var numberOfVerticalGridLines: UInt {
return // Something?
}
var body: some View {
Group {
ForEach(0 ... numberOfHorizontalGridLines) { _ in
// Something?
}
ForEach(0 ... numberOfVerticalGridLines) { _ in
// Something?
}
}
}
}
#if DEBUG
struct GridView_Previews : PreviewProvider {
static var previews: some View {
GridBackgroundView()
}
}
#endif
Я не знаю, что поместить в // Something?
областях. В SwiftUI нет встроенного вида линии, и я не могу на всю жизнь выяснить, какова ширина представления (возможно, потому что это не является частью View
в SwiftUI?)