Как убрать эффект перехода при конвертации однострочного заголовка в многострочный заголовок в iOS 11 LargeTitles - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь показать мой длинный текст на панели навигации в 2 строки.Я использую LargeTitles.

Что мне нужно, это https://i.stack.imgur.com/Yb85L.png // извините, я не могу опубликовать фотографию.

Изображение взято из этого сообщения

У меня естьперепробовал много примеров и добился показа заголовка в 2 строки.но проблема в том, что когда я открываю ViewController с длинным заголовком, он переходит к настройке заголовка.Ниже приведен мой код, который я пробовал.Я хочу избежать скачка (увеличения) и показывать многострочный текст так же, как он, если используется однострочный текст.нормальный эффект.

func multiLineHeader() {
        if #available(iOS 11.0, *) {
            if let subviews = self.navigationController?.navigationBar.subviews {
            for navItem in subviews {
                for itemSubView in navItem.subviews {
                    if let largeLabel = itemSubView as? UILabel {
                        if largeLabel.canFitInSingleLine() { return }
                        largeLabel.numberOfLines = 2
                        largeLabel.lineBreakMode = .byWordWrapping
                        largeLabel.sizeToFit()
                        self.navigationController?.navigationBar.frame.size.height += largeLabel.frame.height
                        self.navigationController?.navigationBar.layoutIfNeeded()
                    }
                }
            }
        }
    }
}

Я звоню с viewDidAppear().Я пробовал звонить с viewDidLoad() и viewWillAppear() не работает заголовок события не в 2 строки.как было при вызове с viewDidAppear().

Если есть что-то непонятное, прокомментируйте, и я добавлю больше деталей.

1 Ответ

0 голосов
/ 23 февраля 2019

Это не решение для решения эффекта многострочного прыжка.

Мой вопрос был основан на многострочном заголовке, который я видел в App Store (приложение), в котором не было эффекта прыжка.Через некоторое время, когда я копаюсь глубоко в этом.Я обнаружил, что даже в App Store на некоторых экранах есть эффект прыжка, а в некоторых местах App Store использует представление, а не панель навигации.

Например, если вы идете в App Store и ищете развлечения Thunderbox.

1) Перейдите в одно из его приложений и затем нажмите на название компании, чтобы увидеть все приложения, которые вы увидите.панель навигации с эффектом прыжка.

2) Если вы откроете профили компаний прямо с экрана поиска, вы не увидите никакого эффекта прыжка.

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