Saltare al contenuto principale
Torna ai plugin
@capgo/capacitor-loader nativo
Tutorial
@capgo/capacitor-loader nativo

Caricamento nativo

Mostra caricamenti animati nativi, overlay trasparenti, asset Lottie e stati di caricamento WebView da JavaScript o code nativo

Guida

Tutorial sul caricatore nativo

Testa sul dispositivo

Scarica l'app Capgo, poi scansa il codice QR code.

Anteprima plugin QR di caricamento nativo code

Utilizza @capgo/capacitor-caricamento-nativo

@capgo/capacitor-native-loader Visualizza gli stati di caricamento attraverso viste iOS e Android native. Utilizzalo quando il caricamento deve rimanere fluido mentre il WebView è occupato, quando gli effetti di sfondo trasparente sono costosi in CSS, o quando un altro plugin nativo deve visualizzare l'interfaccia di caricamento prima che JavaScript sia pronto.

Installa

npm install @capgo/capacitor-native-loader
npx cap sync

Caricamento Nativo a Schermo Intero

import { NativeLoader } from '@capgo/capacitor-native-loader';

const { id } = await NativeLoader.show({
  style: 'siri',
  placement: 'fullscreen',
  message: 'Preparing your session',
  colors: ['#71f6ff', '#8b5cf6', '#ff4ecd', '#fff7ad'],
  scrimColor: 'rgba(3, 7, 18, 0.42)',
  interactionMode: 'block',
});

await initializeAppData();
await NativeLoader.hide({ id });

Caricamento di Rete con Ridimensionamento del WebView

await NativeLoader.setWebViewLayout({
  mode: 'inset',
  insets: { top: 96 },
  animated: true,
});

await NativeLoader.show({
  style: 'wave',
  placement: 'top',
  message: 'Syncing changes',
  interactionMode: 'passThrough',
});

Quando il caricamento è completato, ripristina il WebView:

await NativeLoader.hideAll({ restoreWebView: true });

Caricamento di Progresso in Cima come in Chrome

Utilizza il caricamento di progresso in cima nativo quando desideri una barra di caricamento simile a quella del browser sopra il WebView senza chiedere a CSS di animare durante il lavoro pesante.

const { id } = await NativeLoader.show({
  style: 'chrome',
  placement: 'top',
  colors: ['#4285f4', '#34a853', '#fbbc05', '#ea4335'],
  thickness: 4,
  interactionMode: 'passThrough',
  webView: {
    mode: 'resize',
    insets: { top: 12 },
    restoreOnHide: true,
  },
});

await NativeLoader.hide({ id, restoreWebView: true });

Caricamento di Rete V2 di Siri con Edge

Utilizza siri-v2 per un caricamento a schermo intero nativo che muove il colore intorno all'orlo dello schermo mentre il WebView rimane visibile.

const { id } = await NativeLoader.show({
  style: 'siri-v2',
  placement: 'fullscreen',
  colors: ['#71f6ff', '#8b5cf6', '#ff4ecd', '#fff7ad'],
  thickness: 10,
  scrimColor: 'rgba(3, 7, 18, 0.10)',
  interactionMode: 'passThrough',
});

await NativeLoader.hide({ id });

Caricatore Lottie

await NativeLoader.show({
  style: 'lottie',
  placement: 'center',
  asset: {
    type: 'lottie',
    source: 'loader.json',
    loop: true,
  },
});

Gli asset raccolti sono i migliori per i caricatori di avvio perché sono disponibili prima delle richieste di rete e dell'inizializzazione JavaScript.

Chiamate plugin native

Il plugin esporre API native pubbliche in modo che un altro plugin possa mostrare o nascondere i caricatori direttamente.

Swift:

import CapgoCapacitorNativeLoader

let id = NativeLoader.shared.show(options: [
  "style": "orbit",
  "placement": "fullscreen",
  "message": "Opening secure session"
])

NativeLoader.shared.hide(id: id)

Kotlin:

import app.capgo.nativeloader.NativeLoader

val id = NativeLoader.show(
  activity = activity,
  options = mapOf(
    "style" to "orbit",
    "placement" to "fullscreen",
    "message" to "Loading profile",
  ),
  webView = bridge.webView,
)

NativeLoader.hide(id)

Collegamenti utili

Continua da Utilizzare @capgo/capacitor-native-loader

Se stai utilizzando Utilizzando @capgo/capacitor-native-loader per pianificare il comportamento dei media e dell'interfaccia nativi, connettilo con @capgo/capacitor-native-loader per i dettagli di implementazione, Avvio per la configurazione, Utilizzando @capgo/capacitor-native-navigation per la disposizione del layout del Chrome e WebView nativi, e Utilizzando @capgo/capacitor-transitions per la movimentazione delle rotte del WebView.