Optimize Android layout for foldables (Pixel Fold, Galaxy Fold) and tablets using window size classes. Use when the user says 'foldable android', 'tablet layout android', 'large screen android'.
Pro scans all 2 files and shows the line behind each finding
Scanned 10/4/2026
npx -y skills add khadinakbarlabs/expo-mobile-app-builder --skill add-android-foldable-tablet --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Add Android Foldable Tablet?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/khadinakbarlabs-add-android-foldable-tablet)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: "add-android-foldable-tablet"
description: "Optimize Android layout for foldables (Pixel Fold, Galaxy Fold) and tablets using window size classes. Use when the user says 'foldable android', 'tablet layout android', 'large screen android'."
---
# Optimize for Foldables + Tablets
Pixel Fold and Galaxy Fold series have inner + outer screens. Tablets have larger UIs. Play features foldable-optimized apps.
## Window size classes
Android groups screens into:
- **Compact** — phones (<600dp wide)
- **Medium** — small tablets, large phones folded (600-840dp)
- **Expanded** — tablets, foldables unfolded (>840dp)
## In RN/Expo
```tsx
import { useWindowDimensions } from 'react-native';
const { width } = useWindowDimensions();
const sizeClass = width < 600 ? 'compact' : width < 840 ? 'medium' : 'expanded';
```
## Layout adaptations
### Compact (phone)
- Bottom navigation (3-5 items)
- Single column
### Medium (tablet portrait)
- Navigation rail (side)
- Single column OR 2-pane (list + detail)
### Expanded (tablet landscape, foldable open)
- Navigation drawer (permanent)
- Multi-pane (list-detail-detail)
```tsx
{sizeClass === 'expanded' ? <DrawerLayout /> : <BottomNavLayout />}
```
## Foldable hinge handling
```bash
pnpm add react-native-window-size-class # community lib
```
Or detect foldable state via Posture API (Android 11+):
```tsx
// Native code required — drop down via expo-modules-core
// Or use react-native-folding-feature
```
## Layout for Pixel Fold specifically
- Outer screen: 5.8" 1080×2092
- Inner screen: 7.6" 2208×1840
- Aspect changes drastically when unfolding
- Save user input across hinge state changes (don't dump form state)
## Test
- Pixel Tablet emulator
- Pixel Fold emulator (Android Studio bundles)
- Test ALL screens: rotate + unfold
## Play featuring
Apps with foldable optimization get bonus points in Play featuring. Make sure:
- No fixed-orientation lock unless game
- Layouts adapt smoothly
- App restores state across orientation/posture change
## Pair with
- `apply-material3` (M3 includes responsive guidelines)
- `set-up-emulator` (create Fold + Tablet AVDs)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!