円の下、数字部分のセンタリング
指定なし
![](https://kumonosu.cloudsquare.jp/wordpress/wp-content/uploads/2022/02/swiftui_center_1-473x1024.png)
HStack {
ForEach(1..<6) { index in
Image(systemName: String(index) + ".square" + (self.clocksData.selectClock == index ? ".fill" : ""))
.font(.largeTitle)
.onTapGesture {
self.clocksData.selectClock = index
self.clocksData.nowPercent()
}
}
Image(systemName: "gearshape")
.font(.largeTitle)
.onTapGesture {
self.showSelectPeriod.toggle()
}
}
.foregroundColor(.blue)
.offset(y: height + width)
Space()でセンタリング
![](https://kumonosu.cloudsquare.jp/wordpress/wp-content/uploads/2022/02/swiftui_center_2-473x1024.png)
HStack {
Spacer()
ForEach(1..<6) { index in
Image(systemName: String(index) + ".square" + (self.clocksData.selectClock == index ? ".fill" : ""))
.font(.largeTitle)
.onTapGesture {
self.clocksData.selectClock = index
self.clocksData.nowPercent()
}
}
Image(systemName: "gearshape")
.font(.largeTitle)
.onTapGesture {
self.showSelectPeriod.toggle()
}
Spacer()
}
.foregroundColor(.blue)
.offset(y: height + width)
.frameでセンタリング
![](https://kumonosu.cloudsquare.jp/wordpress/wp-content/uploads/2022/02/swiftui_center_3-473x1024.png)
HStack {
ForEach(1..<6) { index in
Image(systemName: String(index) + ".square" + (self.clocksData.selectClock == index ? ".fill" : ""))
.font(.largeTitle)
.onTapGesture {
self.clocksData.selectClock = index
self.clocksData.nowPercent()
}
}
Image(systemName: "gearshape")
.font(.largeTitle)
.onTapGesture {
self.showSelectPeriod.toggle()
}
}
.foregroundColor(.blue)
.frame(maxWidth: .infinity, alignment: .center)
.offset(y: height + width)