Программируем под IOS
Anonymous
Liquid Glass Animation для изменения размера коллекции элементов управления.
Сообщение
Anonymous » 15 окт 2025, 18:39
Можно ли использовать эффект жидкого стекла при изменении размера набора кнопок?
Что-то вроде панели инструментов в правом верхнем углу? (Хотя любая стеклянная анимация была бы хороша):
С помощью этого кода:
Код: Выделить всё
import SwiftUI
struct ContentView: View {
@State var showAlternate = false
var body: some View {
VStack {
Button {
showAlternate.toggle()
} label: {
Image(systemName: "arrow.clockwise")
Text("Show alternate")
}
}
.padding()
.toolbar {
ToolbarItemGroup(placement: .bottomBar) {
Button { } label: {
Image(systemName: "gear")
}
Spacer()
HStack {
if showAlternate {
Button { } label: {
Image(systemName: "figure.badminton")
}
Button { } label: {
Image(systemName: "figure.run.treadmill")
}
} else {
Button { } label: {
Image(systemName: "figure.kickboxing")
}
Button { } label: {
Image(systemName: "figure.skateboarding")
}
}
}
.animation(.default, value: showAlternate)
}
}
}
}
#Preview {
ContentView()
}
Я получаю:
Подробнее здесь:
https://stackoverflow.com/questions/796 ... f-controls
1760542782
Anonymous
Можно ли использовать эффект жидкого стекла при изменении размера набора кнопок? Что-то вроде панели инструментов в правом верхнем углу? (Хотя любая стеклянная анимация была бы хороша): [img]https://i.sstatic.net/D8vnHa4E.gif[/img] С помощью этого кода: [code] import SwiftUI struct ContentView: View { @State var showAlternate = false var body: some View { VStack { Button { showAlternate.toggle() } label: { Image(systemName: "arrow.clockwise") Text("Show alternate") } } .padding() .toolbar { ToolbarItemGroup(placement: .bottomBar) { Button { } label: { Image(systemName: "gear") } Spacer() HStack { if showAlternate { Button { } label: { Image(systemName: "figure.badminton") } Button { } label: { Image(systemName: "figure.run.treadmill") } } else { Button { } label: { Image(systemName: "figure.kickboxing") } Button { } label: { Image(systemName: "figure.skateboarding") } } } .animation(.default, value: showAlternate) } } } } #Preview { ContentView() } [/code] Я получаю: [img]https://i.sstatic.net/Ts2L6DJj.gif[/img] Подробнее здесь: [url]https://stackoverflow.com/questions/79683015/liquid-glass-animation-for-resizing-a-collection-of-controls[/url]