iOS 10 эффекты размытия заметные и регулярные не работают


Я не нашел ни одного связанного вопроса в интернете, и я пытаюсь получить вид размытия, чтобы отобразить новые эффекты размытия .видный И.регулярные, но они не проявляются. Когда я изменю эффект размытия на .свет, .экстралайт или.темнота, это прекрасно работает. В описании сказано, что новые эффекты размытия адаптируются к пользовательскому интерфейсу. Что это значит, и почему эти два новых эффекта размытия не работают?

У меня есть iOS 10 как в симуляторе, так и в моем iPhone, и ни один из них не отображается новый эффект размытия. Операторы печати говорят, что оператор if (вместо else) вызывается, как и ожидалось.

let blurEffect : UIBlurEffect!
if #available(iOS 10.0, *) {
   blurEffect = UIBlurEffect(style: .prominent )
} else {
   // Fallback on earlier versions
   blurEffect = UIBlurEffect(style: .light )
}
let blurView = UIVisualEffectView(effect: blurEffect)
blurView.frame = CGRect(x: 100, y: 100, width: 200, height: 300)
1 5

1 ответ:

Что это значит, и почему эти два новых эффекта размытия не работают?

Из WWDC 2016 сессия 206: что нового в tvOS :

Мы также добавили два новых стиля размытия в API.
Теперь вы можете использовать UIBlurEffectStyleRegular или UIBlurEffectStyleProminent.
И мы называем эти стили автоматическими.
И они будут на самом деле регулировать эффективный стиль эффекта размытия на основе того, что настройка системы.
Так что если вы используете UIBlurEffectStyleRegular и система в свете, он будет использовать UIBlurEffectStyle.свет.
Если вы используете обычный и темный, вы будете использовать темный.
Если вы используете выдающийся, он будет использовать .экстралайт И.экстрадарк.
.экстрадарк появится в более позднем семени

См. весь текст сессии: http://asciiwwdc.com/2016/sessions/206

В основном эти эффекты предназначены для tvOS. Эта ОС может быть в темном или светлом стиле. Для iOS эти эффекты работают в свете режим.