参加者、画面共有、プラグイン、ピン留めした参加者など、混在するコンテンツを扱うグリッドレイアウトです。simple、spotlight、highlighted のグリッドレイアウトを自動で切り替えます。
| プロパティ | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|
meeting |
RealtimeKitClient |
✅ | - | RealtimeKit のミーティングインスタンス |
participants |
Peer[] |
✅ | [] |
アクティブな参加者の配列 |
pinnedParticipants |
Peer[] |
✅ | [] |
ピン留めした参加者の配列 |
screenShareParticipants |
Peer[] |
✅ | [] |
画面共有中の参加者の配列 |
plugins |
RTKPlugin[] |
✅ | [] |
アクティブなプラグインの配列 |
aspectRatio |
string |
❌ | '16:9' |
グリッドタイルのアスペクト比 |
config |
UIConfig |
❌ | defaultConfig |
UI 設定オブジェクト |
gap |
number |
❌ | 8 |
グリッドタイル間の間隔(ピクセル) |
size |
'lg' | 'md' | 'sm' | 'xl' |
❌ | 'sm' |
サイズのバリアント |
variant |
'boxed' | 'solid' |
❌ | 'solid' |
見た目のバリアント |
iconPack |
IconPack |
❌ | defaultIconPack |
カスタムアイコンパック |
states |
States |
❌ | - | UI の States オブジェクト |
t |
RtkI18n |
❌ | - | i18n の翻訳関数 |
import { RtkMixedGrid } from "@cloudflare/realtimekit-react-native-ui";
function MyComponent() {
return (
<RtkMixedGrid
meeting={meeting}
participants={participants}
pinnedParticipants={[]}
screenShareParticipants={[]}
plugins={[]}
/>
);
}import { RtkMixedGrid } from "@cloudflare/realtimekit-react-native-ui";
function MyComponent() {
return (
<RtkMixedGrid
meeting={meeting}
participants={participants}
pinnedParticipants={pinned}
screenShareParticipants={screenshares}
plugins={activePlugins}
aspectRatio="16:9"
gap={12}
size="md"
/>
);
}