Оверлейский вид не полностью увольняется в Swift UIIOS

Программируем под IOS
Ответить
Anonymous
 Оверлейский вид не полностью увольняется в Swift UI

Сообщение Anonymous »

Я показываю наложение, чтобы получить имя пользователя при запуске приложения; в сочетании с шагом от нижнего перехода, но анимация увольнения всегда останавливается на 90%, а затем исчезает. < /p>

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

@ViewBuilder
func userNameOverlay() ->  some View {
GroupBox {
Image(systemName: "person.circle.fill")
.font(.system(size: 60))
.foregroundStyle(.colorTextPrimary)
.padding()

Text("Enter Your Name")
.appTitle(withSpacing: true)

TextField("John Doe", text: $username)
.padding(12)
.background(.colorBackground)
.clipShape(.rect(cornerRadius: 16))
.shadow(radius: 1, x: 1, y: 1)
.padding(.bottom)

Button {
withAnimation {
vm.showUserNameOverlay = false
}
} label: {
Text("Save")
.padding(.vertical, 10)
.frame(maxWidth: .infinity)
.background(.accent)
.foregroundStyle(.colorBackground)
.fontWeight(.bold)
.clipShape(.rect(cornerRadius: 16))
}
}.padding(.horizontal)
.groupBoxStyle(.customStyle)
.transition(.move(edge: .bottom))
}
< /code>
Сначала это был Vstack с наложением, и теперь я переключился на Zstack, но все еще не работал, почему это? < /p>
            ZStack(alignment: .bottom) {
ScrollView(showsIndicators: false) {
VStack {
main_views…

Spacer()

}.padding()
.foregroundStyle(.colorTextPrimary)
.blur(radius: vm.showUserNameOverlay ? 3 : 0)
.disabled(vm.showUserNameOverlay)
}

if vm.showUserNameOverlay {
Color.gray.opacity(0.4)
.ignoresSafeArea()

userNameOverlay() // that’s the view I’m talking about
.zIndex(100)
}
}
И именно здесь он называется


Подробнее здесь: https://stackoverflow.com/questions/797 ... n-swift-ui
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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