Перезаписать переход извне в SwiftUIIOS

Программируем под IOS
Anonymous
Перезаписать переход извне в SwiftUI

Сообщение Anonymous »

У меня есть компонент значка со встроенным переходом:

Код: Выделить всё

public struct BadgeView: View {

...

public var body: some View {
Text(stringValue)
.background(.red)
.clipShape(RoundedRectangle(cornerRadius: sideLength/2.0))
.transition(.scale)
}
}
Теперь у меня есть модификатор представления, который добавляет значок в качестве наложения к некоторому представлению:

Код: Выделить всё

struct Badge: ViewModifier {

...

func body(content: Content) -> some View {
content
.overlay(alignment: .topLeading) {
BadgeView(value: value)
.offset(x: -size/3.0, y: -size/3.0)
.background(
GeometryReader { geometry in
Color.clear.onAppear {
size = geometry.size
}
.onChange(of: geometry.size) { newValue in
size = newValue
}
}
)
.transition(.scale(scale: 0, anchor: UnitPoint(x: -0.3, y: -0.3)))
}
}
}
Я пытаюсь перезаписать переход, потому что исходный переход перемещается в центр исходного положения, а не смещения значка.
К сожалению, перезапись не имеет никакого эффекта — видимо, SwiftUI использует самый внутренний переход и применяет его. Итак, мне интересно, как для компонента SwiftUI со встроенным переходом я могу перезаписать этот переход извне при использовании этого компонента?

Подробнее здесь: https://stackoverflow.com/questions/783 ... in-swiftui

Вернуться в «IOS»