English | 简体中文 | Deutsch | Português | 日本語 | 한국어
JSON Viewerは、JSONデータをフォーマットして表示するFlutterウィジェットで、JSONノードの展開と折りたたみをサポートしています。主にアプリケーションでAPIレスポンスデータを表示するために使用されます。
pubspec.yamlに依存関係を追加します:
dependencies:
json_shrink_widget: ^1.2.0最も簡単な使用方法:
JsonShrinkWidget(
json: jsonString // String、Map、List型をサポート
)JsonShrinkWidgetは以下の設定オプションをサポートしています:
shrink: bool - デフォルトで折りたたむかどうか、デフォルトはfalsedeep: int - JSONの走査深度レベルindentation: String - インデント文字style: JsonShrinkStyle - スタイル設定deepShrink: int - デフォルトの折りたたみレベルshowNumber: bool - 配列/オブジェクトの要素数を表示するかどうかurlSpanBuilder: Function - カスタムURLリンク表示スタイル
スタイル設定の例:
JsonShrinkWidget(
json: jsonString,
shrink: true, // デフォルトで折りたたむ
deep: 3, // 3レベル走査
indentation: " ", // 2スペースでインデント
style: JsonShrinkStyle(
// カスタムスタイル
keyStyle: TextStyle(color: Colors.blue),
valueStyle: TextStyle(color: Colors.black),
symbolStyle: TextStyle(color: Colors.grey)
),
showNumber: true // 要素数を表示
)- 複数のデータ型をサポート
- JSON文字列
- Map
- List
- 柔軟な表示制御
- クリックでJSONノードの折りたたみ/展開
- デフォルトの折りたたみレベル設定
- カスタムインデントスタイル
- ユーザーフレンドリーな視覚効果
- シンタックスハイライト
- フォーマット済みの整列
- オプションの要素数表示
- カスタム設定
- スタイルのカスタマイズ
- URLリンクの処理
- インデント制御
- 基本的なJSON表示:
String jsonStr = '''
{
"name": "JSON Viewer",
"version": "1.2.0",
"author": "infinity"
}
''';
JsonShrinkWidget(
json: jsonStr
)- スタイル付きの設定:
JsonShrinkWidget(
json: jsonData,
style: JsonShrinkStyle(
keyStyle: TextStyle(
color: Colors.blue,
fontWeight: FontWeight.bold
),
valueStyle: TextStyle(
color: Colors.black87
)
)
)- 配列要素数の表示:
JsonShrinkWidget(
json: listData,
showNumber: true, // 配列の長さを表示
shrink: true // デフォルトで折りたたむ
)- 入力JSON文字列は有効なJSON形式である必要があります
- データサイズに基づいて適切な走査深度(deepパラメータ)を設定することを推奨します
- 大きなJSONデータの場合、デフォルトで折りたたみモードを使用することを推奨します
- スタイル設定はアプリケーションのテーマに応じて完全にカスタマイズ可能です
- JSONパース失敗
- JSON文字列形式が正しいか確認してください
- 文字エンコーディングがUTF-8であることを確認してください
- パフォーマンスの問題
- deepパラメータを適切に制御してください
- 大きなデータセットには��りたたみモードを使用してください
- スタイルの問題
- スタイル設定が正しいか確認してください
- TextStyleパラメータを確認してください
