SwiftUI View автоматически прокручивается вниз без ввода - PullRequest
2 голосов
/ 17 октября 2019

Я пытаюсь обернуть все мои View (само обернутое в VStack) в ScrollView. Когда я запускаю приложение в симуляторе (для различных устройств) или на физическом устройстве, как только страница загружается, представление автоматически прокручивается вниз двумя движениями в шахматном порядке (т.е. не плавно). Конечно, я хочу, чтобы пользователь сначала увидел верхнюю часть страницы и смог прокрутить себя вниз.

Я просто использую базовый ScrollView { } без модификаторов или вводов.

Есть ли что-то, что мне нужно добавить к ScrollView, чтобы предотвратить это, или это может быть вызвано чем-то другим в моем View?

РЕДАКТИРОВАТЬ 2: Я нашел ответ (опубликован ниже), поэтому я отредактировал свой код здесь, чтобы вы могли увидеть, в чем заключалась проблема и как я ее исправил.

import SwiftUI

struct DetailViewTest: View {

    var body: some View {

        ScrollView {

            VStack {

                [Content Removed for Clarity]

            } //End of main VStack

                .navigationBarTitle(Text(""), displayMode: .inline)
                .padding()

        } //End of Scroll View

    }
}

1 Ответ

0 голосов
/ 27 октября 2019

решено: я переместил .navigationBarTitle и .padding () за пределы фигурных скобок ScrollView, чтобы они модифицировали ScrollView вместо основного VStack:

        ...

        } //End of main VStack

            .frame(minWidth: 0, maxWidth: .infinity)

                } // End scroll view

            .navigationBarTitle(Text(""), displayMode: .inline)
            .padding()

    }
}

Это, должно быть, было просто странно скак SwiftUI отображает представление и применяет модификаторы.

Примечание: я также добавил .frame (minWidth: 0, maxWidth: .infinity) к моему VStack, который, я не думаю, был связан с моей проблемой, хотяВы можете найти его полезным для правильной работы ScrollView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...