Список представлений, дрожащих в SwiftUI - PullRequest
1 голос
/ 01 ноября 2019

У меня есть главное подробное представление, которое перемещается по серии последовательных списков, используя полностью ванильный SwiftUI, и я заметил две вещи.

  1. Дрожание строк в списке дрожит при доступе к нему по навигационной ссылке?
  2. .navigationBarTitle не отображается, пока новый вид полностью не появится на экране?

Кажется, что ничего из этого не должно произойти? Интересно, есть ли у кого-нибудь идеи (видео и код прилагается).

Видео вопросов: https://www.dropbox.com/s/5jq3e8chay6hsy5/jitter.mov?dl=0

UserList.swift:

import SwiftUI

struct UserList: View {
    var body: some View {
        NavigationView {
            List(userData) { this in
                NavigationLink(destination: CityList(user: this, cities: this.cities)) {
                    UserRow(user: this)
                }

            }
            .navigationBarTitle(Text("Users"))
        }
    }
}

UserRow.swift:

import SwiftUI

struct UserRow: View {
    var user: UserModel
    var body: some View {
        VStack(alignment: .leading) {
            Text(user.firstName + " " + user.lastName)
                .font(.headline)
        }
    }
}

CityList.swift:

import SwiftUI

struct CityList: View {
    var user: UserModel
    var cities: [CityModel]

    var body: some View {
        List (cities) { this in
            NavigationLink(destination: TownList(city: this, towns: this.towns)) {
               CityRow(city: this)

            }.navigationBarTitle(Text(self.user.firstName + self.user.lastName))
        }
    }
}

CityRow.swift:

import SwiftUI

struct CityRow: View {
    var city: CityModel

    var body: some View {
        VStack(alignment: .leading) {
            Text(city.name)
                .font(.headline)
        }
    }
}

1 Ответ

0 голосов
/ 01 ноября 2019

Ну, в третий раз прелесть, вот как они говорят.

Дрожание только на симуляторе, у меня была такая же проблема. Затем я установил приложение на телефон, и оно отлично работало. Просто проигнорируйте это на симуляторе ..

И проблема с названием - насколько я знаю - также просто ошибка на симуляторе, у меня нет этих проблем на телефоне.

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