Изменение цвета и символа кнопки «Назад» в App Navigator с помощью SwiftIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Изменение цвета и символа кнопки «Назад» в App Navigator с помощью Swift

Сообщение Anonymous »

Я пытаюсь добиться прикрепленного вида навигации «Назад»:
[img]https://i.sstatic.net /Umkaa7VE.png[/img]

Я тоже хочу сохранить функциональность слайдера назад.
Из вопроса на форуме Apple, заданного год назад, что Я пытаюсь сделать это «официально не поддерживается». Тем не менее, я хотел бы задать вопрос здесь, о переполнении стека.

Мне нужно четко различать реальный символ и текст кнопки.
Пока что , я выяснил три вещи:
  • Вы можете скрыть стандартную панель навигации и тень, выполнив следующие действия:

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

// Set up the UINavigationBarAppearance
let appearance = UINavigationBarAppearance()
appearance.configureWithTransparentBackground() // Transparent background
appearance.shadowColor = nil // Remove shadow
appearance.backgroundColor = .clear // Clear background

// Apply appearance globally
UINavigationBar.appearance().standardAppearance = appearance
  • Вы можете изменить стандартный символ навигации кнопки «chevron.backwards» на другой символ, предоставленный Apple, выполнив следующие действия:

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

// Set up the UINavigationBarAppearance
let appearance = UINavigationBarAppearance()

// Create a static black version of the back button image
let backImage = UIImage(systemName: [insert symbol name here])
appearance.setBackIndicatorImage(backImage, transitionMaskImage: backImage)

// Apply appearance globally
UINavigationBar.appearance().standardAppearance = appearance
  • Вы можете настроить текст «Назад» стандартной навигации, выполнив следующие действия:

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

// Customize back button appearance
let backButtonAppearance = UIBarButtonItemAppearance(style: .plain)
backButtonAppearance.normal.titleTextAttributes = [
.font: UIFont.systemFont(ofSize: 16, weight: .medium),
.foregroundColor: UIColor.black // Text color
]
appearance.backButtonAppearance = backButtonAppearance

// Apply appearance globally
UINavigationBar.appearance().standardAppearance = appearance
Тогда все вместе внутри представления это будет выглядеть так (для меня):

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

struct StartupPage2: View {
init() {
// Set up the UINavigationBarAppearance
let appearance = UINavigationBarAppearance()
appearance.configureWithTransparentBackground() // Transparent background
appearance.shadowColor = nil // Remove shadow
appearance.backgroundColor = .clear // Clear background

// Customize back button appearance
let backButtonAppearance = UIBarButtonItemAppearance(style: .plain)
backButtonAppearance.normal.titleTextAttributes = [
.font: UIFont.systemFont(ofSize: 16, weight: .medium), // Text font
.foregroundColor: UIColor.black // Text color
]
appearance.backButtonAppearance = backButtonAppearance

// Create a static black version of the back button image
let backImage = UIImage(systemName: "chevron.backward") // Change UIImage
appearance.setBackIndicatorImage(backImage, transitionMaskImage: backImage)

// Apply appearance globally
UINavigationBar.appearance().standardAppearance = appearance
}
Но тогда я не могу найти способ изменить цвет шеврона, чтобы он выглядел так, как будто он прикреплен к моему дизайну.


Подробнее здесь: https://stackoverflow.com/questions/793 ... sing-swift
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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