swiftUI 画廊中部稍微放大选中
时间: 2023-09-30 07:13:04 浏览: 35
要在SwiftUI中创建一个画廊并在选中项目时将其放大,你可以使用`ScrollView`和`LazyHGrid`来创建画廊。当用户选择一个项目时,你可以使用`scaleEffect`来将其放大。
以下是一个示例代码:
```swift
struct GalleryView: View {
let items: [String] = ["item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8", "item9"]
@State private var selected: String?
var body: some View {
ScrollView {
LazyHGrid(rows: [GridItem(.fixed(200))]) {
ForEach(items, id: \.self) { item in
Image(item)
.resizable()
.scaledToFit()
.onTapGesture {
selected = item
}
.scaleEffect(selected == item ? 1.2 : 1.0)
.animation(.easeInOut(duration: 0.3))
}
}
.padding()
}
}
}
```
在这个示例中,我们使用`LazyHGrid`来创建一个水平滚动的网格。当用户点击图像时,我们将其放大到1.2倍,并使用动画进行平滑过渡。请注意,我们在`scaleEffect`上使用了一个条件语句,以便只有在选中项目时才应用缩放效果。
希望这可以帮助你创建一个类似于画廊的视图,并在选中项目时将其放大!