WidgetBundle возвращает виджеты на основе некоторой логики

У меня есть несколько виджетов главного экрана iOS14, готовых для моего приложения, и я возвращаю их все в WidgetBundle следующим образом:

@main
struct WidgetsBudle: WidgetBundle {
    @WidgetBundleBuilder
    var body: some Widget {
        Widget1()
        Widget2()
        Widget3()
    }
}

Widget2 зависит от правильной работы служб определения местоположения, но если пользователь не предоставил разрешения на определение местоположения, не имеет смысла даже показывать этот виджет. Могу ли я иметь какую-то логику, связанную с возвратом виджетов внутри WidgetBundle тела?


person sabius    schedule 08.09.2020    source источник
comment
AFAIK вы не можете. @WidgetBundleBuilder body не поддерживает операторы потока управления (пока), и у вас нет других инструментов, таких как представления (Group, VStack и т. Д.).   -  person pawello2222    schedule 22.09.2020