- Getting Started
- Architecture
- The Basics
- Digging Deeper
-
EDGE Components
- Introduction
- Activity Indicator
- Badge
- Bottom Navigation
- Bottom Sheet
- Button
- Button Group
- Canvas
- Carousel
- Checkbox
- Chip
- Column
- Divider
- Gesture Area
- Icon
- Image
- Lazy Grid
- Layout & Styling
- List
- Menus
- Modal
- Pressable
- Progress Bar
- Radio Group
- Refreshable
- Row
- Scroll View
- Select
- Shapes
- Side Navigation
- Slider
- Spacer
- Stack
- Tab Row
- Text
- Text Input
- Toggle
- Top Bar
- Virtual List
- Web View
- Plugins
- Testing
- Publishing Your App
Activity Indicator
Get the Jump app
You'll need the free Jump app to preview this page on your device. Install it, then scan the code again.
Overview#
A circular spinner indicating background activity. Always indeterminate — for determinate progress use
<native:progress-bar>. Renders as a SwiftUI ProgressView on iOS and Material3
CircularProgressIndicator on Android.
Copied!
<native:activity-indicator />
Props#
All shared layout and style attributes are supported, plus:
size-"sm","md"(default), or"lg"(optional, string). Legacy ints1=large,2=small are also acceptedcolor- Spinner color as hex string (optional). Leave unset to usetheme.primarya11y-label- Accessibility label (optional)a11y-hint- Accessibility hint (optional)
Examples#
Centered loading screen#
Copied!
<native:column class="w-full h-[200] items-center justify-center"> <native:activity-indicator size="lg" /> <native:text class="text-base text-theme-on-surface-variant mt-4">Loading...</native:text></native:column>
On a real loading screen, use <native:column fill center> at the page root instead — the fixed h-[200] here just
gives the example a bounded area to center in.
Inline loading#
Copied!
<native:row class="gap-2 items-center"> <native:activity-indicator size="sm" /> <native:text class="text-sm text-theme-on-surface-variant">Refreshing</native:text></native:row>
Override the tint#
Copied!
<native:activity-indicator color="#7C3AED" />
Element#
Copied!
use Nativephp\NativeUi\Elements\ActivityIndicator; ActivityIndicator::make() ->size('lg') ->color('#7C3AED') ->a11yLabel('Loading messages');
make()- Create a new indicatorsize(string|int $size)-"sm" | "md" | "lg". Legacy:1=large,2=smallcolor(string $hex)- Override the theme tinta11yLabel(string $value)- Accessibility labela11yHint(string $value)- Accessibility hint
NativePHP
Bring your
Laravel
skills to the
desktop.
Cloud Platform
Bifrost
Build your NativePHP apps
in the cloud.
Ship it!
Plans from $10/mo
Plugin Dev Kit
Build native plugins with
Claude Code
Learn More
NativePHP Ultra
All NativePHP plugins, teams & priority support from
$35/mo
Learn More
The Vibes
The unofficial Laracon US
Day 3
Grab Your Spot
Only 100 tickets!
The Masterclass
Go from zero to
published app
in no time
in no time
Learn More