Нужна помощь в макете приложения watchOS - PullRequest
0 голосов
/ 07 октября 2019

Я наткнулся на две проблемы. Я пытаюсь построить вид, который будет содержать элементы, размещенные на полном дисплее часов (сверху вниз, на весь экран). В некоторых приложениях для часов есть такие представления.

Код ниже показывает, как переместить контент в верхний + левый край экрана. И есть две проблемы.

var body: some View {
    ZStack(alignment: .topTrailing) {
        Rectangle().foregroundColor(Color.green)

        HStack(spacing: 0) {
            VStack(alignment: .trailing, spacing: 0) {
                Text("Hello World")
                    .padding(.trailing, 20)
                Text("Hello World")
                Text("Hello World")
            }
        }
    }.edgesIgnoringSafeArea(.all)
        .navigationBarHidden(true)
}

Как видите, элемент Text выровнен по верху + трейлинг с небольшим отступом.

По умолчанию в верхней части экрана отображается панель навигации с таймером. Модификатор .navigationBarHidden (true) работает и правильно скрывает панель навигации, но не таймер. Это первая проблема.

Я пока не могу опубликовать изображение.

Вторая проблема: в консоли отображаются два предупреждения при запуске приложения на симуляторе. И я не уверен в его значениях. Несмотря на предупреждения, симулятор не уничтожен.

Расширение WatchKit libMobileGestalt utility.c: 421: значение не найдено для ключа 1129072723

Расширение WatchKit [по умолчанию] не имеет материала, по умолчаниюзажечь алюминий.

Мои оценки заранее.

1 Ответ

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

Для вашей первой проблемы вы не можете удалить время с панели навигации. Основная задача AW - определить время, поэтому оно всегда должно быть видно. Единственный случай, когда время не видно, - когда вы диктуете или пишете что-либо с помощью «клавиатуры».

Предупреждения не обязательно являются проблемой, вы можете игнорировать их (особенно второй)

...