Dynamic Island: wat is het, interactie met Dynamic Island

Auteur: IT Sectr Gepubliceerd: 2026-02-28 Leestijd: 9 min

Dynamic Island — een interactief gebied boven aan de iPhone 14 Pro en alle iPhones 15/16, dat meldingen, achtergrondactiviteiten en systeemindicatoren verenigt in één dynamische zone. In tegenstelling tot de traditionele uitsparing (notch), verandert Dynamic Island van vorm en grootte afhankelijk van de huidige context. Volgens Apple (WWDC 2024) interageren gebruikers gemiddeld 12 keer per dag met Dynamic Island — via tikken, lang indrukken en Live Activities met ActivityKit. Lees meer over animaties in iOS in het artikel over Corner Radius.

Belangrijkste punten

  • Dynamic Island — Apple's software-hardware oplossing die de uitsparing vervangt door een interactieve zone met variabele geometrie.
  • Live Activities — widgets op Dynamic Island die werken via het ActivityKit-framework (iOS 16.1+).
  • Drie toestanden: compact (pictogram), minimaal (pil), uitgebreid (paneel met inhoud).
  • ActivityKit — Swift-framework voor het publiceren van Live Activities op Dynamic Island en Lock Screen.
  • Dynamic Island ondersteunt gebaren: tikken om de app te openen, lang indrukken om het paneel uit te vouwen.

Wat is Dynamic Island?

Dynamic Island — is een interactief gebied op basis van Apple's software-hardware oplossing, geïntroduceerd in september 2022 samen met de iPhone 14 Pro. Fysiek is het een uitsparing in de vorm van een pil, omringd door OLED-pixels die dynamisch van kleur en vorm veranderen. Apple gebruikt een combinatie van een hardware compartiment voor de camera en Face ID met software-rendering van zwarte gebieden eromheen, waardoor de illusie van een «levend» eilandje ontstaat.

Het hoofddoel van Dynamic Island is het overbruggen van de kloof tussen systeemmeldingen en actieve inhoud. In plaats van meldingen in het midden van het scherm (zoals op Android) of als banners bovenin (zoals op oudere iOS-versies), integreert Dynamic Island ze direct in het hardware-gebied. Dit vermindert afleiding en creëert een gevoel van eenheid.

Volgens Apple (iOS 17 Adoption Statistics, 2024) is Dynamic Island beschikbaar op 38% van de actieve iPhones. Vanaf de iPhone 15 (2023) hebben alle modellen in de serie Dynamic Island gekregen, inclusief de basismodellen. In iOS 18 breidde Apple de Live Activities API uit met ondersteuning voor aftellende timers en sportresultaten direct op Dynamic Island.

Welke modellen ondersteunen Dynamic Island

Dynamic Island is beschikbaar op iPhone 14 Pro, iPhone 14 Pro Max, iPhone 15, iPhone 15 Plus, iPhone 15 Pro, iPhone 15 Pro Max, iPhone 16, iPhone 16 Plus, iPhone 16 Pro, iPhone 16 Pro Max. Op iPad ontbreekt Dynamic Island. Voor ontwikkeling met Dynamic Island is Xcode 14.1+ en iOS 16.1+ vereist.

Hoe werkt Dynamic Island: drie toestanden

Dynamic Island ondersteunt drie weergavetoestanden: compact (compact), minimaal (minimal) en uitgebreid (expanded). De overgang tussen toestanden wordt geanimeerd met UIKit-animaties en Core Animation. Het systeem beheert zelf de prioriteit van activiteiten: als meerdere apps tegelijkertijd inhoud proberen weer te geven, gebruikt iOS een wachtrij op basis van de starttijd van de laatste activiteit.

ToestandGrootteInhoudVoorbeeld
Compact49×18 ptApp-pictogram + systeempictogramTimer, muziek, oproep
MinimalTot 66×18 ptPictogram + korte tekstNavigatie-instructies, stappen
ExpandedTot 364×160 ptVolledige widget met inhoudSportscore, taxistatus

Compacte toestand — de standaardweergave van Dynamic Island wanneer één achtergrondtaak actief is. Wordt weergegeven als een afgeronde pil met het app-pictogram links en het systeempictogram rechts. Standaard starten alle Live Activities in de compacte toestand.

Minimale toestand treedt op wanneer twee of meer taken tegelijkertijd actief zijn. Dynamic Island «splitst» zich in twee afzonderlijke elementen links en rechts van de camera. Minimale toestand maakt het mogelijk om twee onafhankelijke informatiebronnen weer te geven, zoals de aankomsttijd van een taxi en het huidige nummer.

Uitgebreide toestand wordt geactiveerd door lang op Dynamic Island te drukken. In deze modus wordt een volledige widget met aanpasbare inhoud weergegeven: titels, beschrijvingen, voortgangsbalken, knoppen. De uitgebreide toestand ondersteunt scrollen en interactieve elementen.

ActivityKit en Live Activities: Swift API

ActivityKit — een Swift-framework, geïntroduceerd in iOS 16.1, waarmee apps Live Activities kunnen publiceren op Dynamic Island en Lock Screen. ActivityKit gebruikt een architectuur gebaseerd op ActivityView en ActivityAttributes: de eerste bepaalt het type inhoud, de tweede — de variabele gegevens. Het framework werkt samen met WidgetKit, maar in tegenstelling tot widgets kunnen Live Activities in realtime worden bijgewerkt zonder de app te openen.

swift
import ActivityKit
import SwiftUI

// Activiteitsattributen definiëren
struct DeliveryAttributes: ActivityAttributes {
    public struct ContentState: Codable, Hashable {
        var driverName: String
        var distanceToArrival: Double
        var estimatedMinutes: Int
    }
    var orderNumber: String
}

// Live Activity starten
func startDeliveryActivity() {
    let initialState = DeliveryAttributes.ContentState(
        driverName: "Alexey",
        distanceToArrival: 3.5,
        estimatedMinutes: 12
    )
    let attributes = DeliveryAttributes(orderNumber: "ORD-2024-8912")
    let activity = try? Activity.request(
        attributes: attributes,
        contentState: initialState,
        pushType: .token
    )
}

Live Activities worden bijgewerkt via ActivityView, dat SwiftUI-inhoud voor Dynamic Island rendert. Het systeem bepaalt zelf welke sjabloon te gebruiken (compact, minimaal of uitgebreid), afhankelijk van de grootte van Dynamic Island en het aantal activiteiten. Roep activity.update(using: contentState) aan om de inhoud bij te werken. Om te beëindigen — activity.end(dismissalPolicy: .immediate).

Dynamische meldingen met push-updates

ActivityKit ondersteunt push-updates via APNs (Apple Push Notification Service). Bij het starten van een Live Activity kunt u een pushToken aanvragen en vanaf de server updates sturen zonder de app op het apparaat te starten. Push-updates werken via activity.pushToken en Activity.pushToStartToken voor het op afstand starten van Live Activities.

swift
// Live Activity bijwerken via Push
func updateActivity(activity: Activity<DeliveryAttributes>) {
    let updatedState = DeliveryAttributes.ContentState(
        driverName: "Alexey",
        distanceToArrival: 1.2,
        estimatedMinutes: 4
    )
    let alertConfiguration = AlertConfiguration(
        title: "Koerier is dichtbij",
        body: "Alexey arriveert over 4 minuten",
        sound: .default
    )
    await activity.update(
        using: updatedState,
        alertConfiguration: alertConfiguration
    )
}

AlertConfiguration — een extra parameter die een melding boven Dynamic Island toont bij belangrijke updates (bijvoorbeeld «Koerier aangekomen»). Zonder AlertConfiguration wordt de inhoud stil bijgewerkt, wat geschikt is voor voortgangsbalken en timers.

Dynamic Island vs Notch: vergelijking

Notch (uitsparing) — het hardware-gebied van de iPhone X–13, met de camera aan de voorkant, Face ID-sensor en luidspreker. De notch is statisch: de grootte en vorm veranderen niet en meldingen worden eronder weergegeven als standaard banners. Dynamic Island daarentegen gebruikt pixels rond de uitsparing om inhoud weer te geven, waardoor het hardware-element onderdeel van de interface wordt.

CriteriumDynamic IslandNotch
InteractiviteitOndersteunt tikken, lang indrukken, vegenNiet interactief
InhoudsaanpassingPast vorm aan context aanStatisch, inhoud onder uitsparing
Live ActivitiesIngebouwde ondersteuning via ActivityKitNee — alleen gewone meldingen
MultitaskingTwee gelijktijdige activiteiten (links en rechts)Slechts één activiteit
BeschikbaarheidiOS 16.1+, iPhone 14 Pro en nieuweriOS 11+, iPhone X–13

Volgens de Apple Human Interface Guidelines (2025) mag Dynamic Island niet worden gebruikt voor advertenties of het constant weergeven van statische inhoud. Live Activities zijn alleen bedoeld voor achtergrondtaken met een duidelijke levenscyclus: timers, bezorging, sport, muziek, navigatie. Overtreding van deze regels leidt tot afwijzing van de app in de App Store Review.

Levenscyclus en gebaren van Dynamic Island

Dynamic Island heeft een strikte levenscyclus: een activiteit begint met een verzoek via Activity.request(), doorloopt de toestanden actief/onderbroken/bijgewerkt en eindigt met een aanroep van activity.end(). Het systeem kan een activiteit geforceerd beëindigen bij geheugengebrek (bijvoorbeeld bij het starten van de camera). In dat geval ontvangt de app een melding via ActivityActivityState.finished.

Gebaren Dynamic Island worden verwerkt door SwiftUI-inhoud in ActivityView. Standaard gebaren: tikken op de compacte toestand opent de app, lang indrukken opent de uitgebreide toestand, naar beneden vegen sluit de uitgebreide toestand. Aangepaste gebaren worden toegevoegd via SwiftUI-modifiers (onTapGesture, onLongPressGesture) binnen de activiteitsweergave.

Afhandeling van de finished-toestand

Wanneer het systeem een Live Activity beëindigt (of de gebruiker deze wegveegt), moet de app de finished-toestand afhandelen om bronnen vrij te geven. Het wordt aanbevolen om te abonneren op Activity.activityStateUpdates en lokale verwijzingen naar de activiteit te verwijderen na voltooiing.

swift
import ActivityKit

func observeActivityState(activity: Activity<DeliveryAttributes>) {
    Task {
        for await state in activity.activityStateUpdates {
            switch state {
            case .active:
                print("Activity actief op Dynamic Island")
            case .dismissed:
                print("Activity verborgen door gebruiker")
                await activity.end(dismissalPolicy: .immediate)
            case .finished:
                print("Activity beëindigd door systeem")
                cleanupResources()
            @unknown default:
                break
            }
        }
    }
}

Aanbeveling van Apple (WWDC 2024, Session 10146): gebruik Dynamic Island niet voor het weergeven van statussen die geen aandacht van de gebruiker vereisen. Elke Live Activity moet een duidelijke start- en eindtrigger hebben. Gebruik voor achtergrondupdates zonder UI Background Tasks, niet Live Activities.

Veelgestelde vragen

Op welke iPhones werkt Dynamic Island?

Dynamic Island is beschikbaar op iPhone 14 Pro, 14 Pro Max en alle modellen iPhone 15 en iPhone 16 (inclusief de basisversies). Voor ontwikkeling is iOS 16.1+ en Xcode 14.1 vereist. Op oudere modellen (iPhone X–13) wordt de statische notch-uitsparing gebruikt, die geen Live Activities ondersteunt.

Wat is het verschil tussen Dynamic Island en een gewone melding?

Dynamic Island integreert de melding in het hardware-gebied van het scherm zonder inhoud te blokkeren. Een gewone melding verschijnt als een banner bovenin en verdwijnt na enkele seconden. Live Activities op Dynamic Island kunnen uren actief blijven en in realtime worden bijgewerkt (leveringsstatus, timer, muziek).

Hoe kan ik inhoud op Dynamic Island bijwerken zonder de app te openen?

Gebruik push-updates via APNs. Roep bij het starten van een Live Activity activity.pushToken aan en stuur de token naar uw server. De server stuurt een update-verzoek via APNs met een nieuwe ContentState. Alternatief — lokale update via activity.update(using:) vanuit de app zelf.

Hoe kan ik twee activiteiten tegelijkertijd op Dynamic Island weergeven?

iOS splitst Dynamic Island automatisch in twee segmenten bij twee actieve Live Activities. Elke activiteit wordt weergegeven in minimale toestand links en rechts van de camera. Bij lang indrukken van een van de segmenten wordt de uitgebreide toestand van alleen die app geopend.

Waarom verschijnt mijn Live Activity niet op Dynamic Island?

Controleer: (1) de app heeft NSSupportsLiveActivities = YES in Info.plist, (2) ActivityAttributes en ContentState implementeren Codable en Hashable, (3) iOS-versie 16.1+, (4) het apparaat ondersteunt Dynamic Island. Gebruik voor de simulator iPhone 14 Pro of nieuwer in Xcode.

Samenvatting

  • Dynamic Island — de interactieve zone van iPhone 14 Pro+ die de statische notch vervangt.
  • Ondersteunt drie toestanden: compact, minimaal en uitgebreid met vloeiende overgangsanimaties.
  • ActivityKit — Swift-framework voor het publiceren van Live Activities op Dynamic Island en Lock Screen.
  • Live Activities worden bijgewerkt via lokale aanroepen of pushmeldingen via APNs.
  • Gebaren: tikken om naar de app te gaan, lang indrukken om het paneel uit te vouwen, vegen om te sluiten.
  • Dynamic Island ondersteunt tot twee gelijktijdige activiteiten met segmentverdeling.
  • Apple beperkt het gebruik van Live Activities tot achtergrondtaken met duidelijke tijdsbestekken.

We ontwikkelen een mobiele applicatie turnkey

IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.

Bespreek het project

Lees ook