Не могу установить теневое изображение UITabBar в iOS 13 - PullRequest
3 голосов
/ 23 сентября 2019

После обновления до iOS 13 появилось несколько проблем, связанных с панелью вкладок.Я исправил большинство, но оставшийся не может переопределить теневое изображение на панели вкладок.Следующий код работал в iOS 12 и ниже:

[[UITabBar appearance] setShadowImage:[UIImage imageName:@"CustomTabBarShadowImage"]];

Я попытался переопределить его, установив новые атрибуты "standardAppearance".Это работает, но я использую собственный шрифт в своем приложении, и независимо от того, что я делаю, заголовки вкладок, похоже, ограничены шириной значка вкладки и поэтому обрезаются.

Это оставляет 2 вопроса, пожалуйста:

  1. Есть какие-нибудь идеи, как получить пользовательское теневое изображение панели вкладок в iOS 13 без использования стандартного внешнего вида?
  2. Как предотвратить обрезание заголовков вкладок при использовании пользовательского шрифта?(Обратите внимание, что я установил их, используя новые методы UITabBarItemStateAppearance)

PS: Что касается числа 1, я нашел способ его обойти - я просто добавляю uiview с рамкой CGRectMake(0, -0.5, [UIScreen mainScreen].bounds.size.width, 0.5) ввкладка, судя по всему, работает.

...