React Nativeでマテリアルデザインのチップ(Chip)を表示する方法を徹底解説
UIにチップ(Chip)を表示するには、React Native Paperが提供するマテリアルデザインコンポーネントを利用します。React Native Paperは、Googleのマテリアルデザインガイドラインに沿ったUIパーツを簡単に導入できる人気のライブラリです。
React Native Paperのインストール
まず、以下のコマンドでreact-native-paperをプロジェクトにインストールします。
npm install --save-dev react-native-paper
インストール後、チップコンポーネントは画面上で次のように表示されます。

チップコンポーネントの基本構文
チップの基本的な書き方は以下のとおりです。
<Chip icon="icontodisplay" onPress={onPressfunc}>Chip Name</Chip>チップで使える主なプロパティ一覧
Chipコンポーネントには、見た目や動作をカスタマイズするための便利なプロパティが多数用意されています。
| プロパティ | 説明 |
|---|---|
| mode | 「flat」または「outlined」を指定します。flatを選ぶと枠線のないシンプルなデザインになり、outlinedを選ぶと枠線付きのチップが表示されます。 |
| icon | チップに表示するアイコンを指定します。 |
| selected | true / false を指定します。trueにするとチップが選択状態になります。 |
| selectedColor | 選択状態のチップに適用される色を指定します。 |
| disabled | チップを無効化(操作不可)にします。 |
| onPress | ユーザーがチップをタップしたときに呼び出される関数を指定します。 |
| onClose | 閉じるボタンがタップされたときに呼び出される関数を指定します。 |
| textStyle | チップ内のテキストに適用するスタイルを指定します。 |
| style | チップコンポーネント全体に適用するスタイルを指定します。 |
実装例:チップを表示するコード
以下は、チップを実際に表示するためのJSXコード例です。
<SafeAreaView style={styles.container}>
<Chip icon="camera" disabled onPress={() => console.log('camera')}>Click
Here</Chip>
<Chip icon="apple" mode="outlined"selectedColor='green' selected
onPress={() => console.log('apple')}>Apple Icon</Chip>
</SafeAreaView>完全なサンプルコード
スタイル定義を含む、動作する完全なサンプルコードは以下のとおりです。3種類のチップ(無効状態のチップ、選択状態のアウトラインチップ、日付選択チップ)を配置しています。
import * as React from 'react';
import { StyleSheet, Text, SafeAreaView } from 'react-native';
import { Chip } from 'react-native-paper';
const MyComponent = () => (
<SafeAreaView style={styles.container}>
<Chip icon="camera" style={styles.chip} disabled onPress={() =>
console.log('camera')}>Click Here</Chip>
<Chip icon="apple" style={styles.chip}
mode="outlined"selectedColor='green' selected onPress={() =>
console.log('apple')}>Apple Icon</Chip>
<Chip icon="calendar-month" style={styles.chip} mode="outlined" selected
onPress={() => console.log('calendar')}>Select Date</Chip>
</SafeAreaView>
);
export default MyComponent;
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: "center",
justifyContent: "center"
},
chip: {
marginTop:10
}
});実行結果
上記のコードを実行すると、アイコン付きのチップが画面中央に縦に並んで表示されます。無効化されたチップはグレーアウトし、選択状態のチップは指定した色(この例では緑)で強調されます。

このように、React Native PaperのChipコンポーネントを使えば、少ないコード量でマテリアルデザインに準拠した洗練されたチップUIを簡単に実装できます。タグ選択やフィルター機能など、さまざまな場面で活用してみてください。
-
React Navigation 5 を使って React Native のナビゲーションを処理する方法
React Nativeでナビゲーションを扱うときに真っ先に思い浮かぶライブラリといえば、React Navigationです。 筆者はこのライブラリの大ファンで、React Nativeのナビゲーション処理には常に最初の選択肢として採用しています。その理由の一つは、優れていて使いやすいAPIを備え、カスタマイズ性も非常に高いからです。 この記事を書くにあたったきっかけは、バージョン5がベータ版から安定版へと移行したことです。バージョン5にはいくつかの機能変更が加わり、ルートの宣言方法がシンプルかつ新しい設計のAPIへと生まれ変わりました。 本記事では、新しいAPIの概要と、アプリケーションで
-
React Nativeで動画を背景に使う方法をわかりやすく解説
この記事では、React Nativeで背景動画(backgroundVideo)を作成する方法を解説します。React Nativeを始めたばかりの方は、まず「React Nativeでモバイルアプリ開発を始めるために知っておくべきこと」といった入門記事を読んでおくと理解がスムーズになります。背景動画はアプリのUIに洗練された印象を与える演出手段です。広告の表示やユーザーへのメッセージ伝達など、さまざまな用途に活用できます。今回はPeletonアプリのホーム画面のようなデザインを目標に、実装方法を見ていきましょう。前提条件実装を始める前に、以下の環境が整っている必要があります。react-n