В SwiftUI есть способ отобразить изображение профиля в navigationBarItems (ведущий: трейлинг :)? - PullRequest
0 голосов
/ 15 января 2020

При использовании изображения в navigationBarItems(leading:trailing:) это следующие результаты:

  1. Успех - Image(systemName: "plus")
  2. Успех - Image("iconProfile"), где "iconProfile" - это актив изображения (pdf) из 4 КБ
  3. Сбой - Image("photoProfile"), где "photoProfile" - это актив изображения (jpeg) 400 КБ

Я пытаюсь заставить работать пункт 3. Он будет отображать только цвет solid. Кто-нибудь знает, существует ли тип изображения или ограничение размера в том, что может быть отображено в navigationBarItems(leading:trailing:)?

Редактировать: Это отличается от элемента, предложенного @LuLuGaGa в комментарии ниже. Этот вопрос касается добавления изображения к navigationBarItems(leading:trailing:), тогда как мой вопрос касается конкретно рендеринга актива, уже добавленного к navigationBarItems(leading:trailing:).

1 Ответ

0 голосов
/ 15 января 2020

По умолчанию изображения в навигационных панелях имеют TemplateRenderingMode из .template, что означает, что они будут смотреть только на альфа-канал. Они однотонные c и оттенок цвета. Если у вас есть актив, который имеет фактический цвет, который вы хотите отобразить, то вам нужно установить режим рендеринга шаблона на .original.

Image("lol")
    .resizable()
    .renderingMode(.original)

Редактировать: просто заметив, что вы используете JPEG, который имеет нет альфа-канала (прозрачность), и поэтому, если это ваш случай сбоя, и поэтому вы намереваетесь, чтобы он больше отображался в виде значка, то вы можете просто перейти на PNG.

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