body method
Defines the actual body code. path
is passed relative to lib
, baseName
is the filename, and className
is the filename converted to Pascal case.
実際の本体コードを定義します。path
にlib
からの相対パス、baseName
にファイル名が渡され、className
にファイル名をパスカルケースに変換した値が渡されます。
Implementation
@override
String body(String baseName, String className) {
return r"""
`UniversalSearchBar`は下記のように利用する。
## 概要
$excerpt
## 利用方法
```dart
UniversalSearchBar(
hintText: "検索",
onSearch: (value) {
// TODO: Implement the search action.
},
onChanged: (value) {
// TODO: Implement the text changed action.
},
leading: const Icon(Icons.search),
trailing: [
IconButton(
icon: const Icon(Icons.clear),
onPressed: () {
// TODO: Implement the clear action.
},
),
],
);
```
## プロパティ
- `hintText`: 検索バーのプレースホルダーテキストを設定する。
- `onSearch`: 検索実行時のコールバックを設定する。
- `onChanged`: テキスト変更時のコールバックを設定する。
- `leading`: 検索バーの左側に表示するウィジェットを設定する。
- `trailing`: 検索バーの右側に表示するウィジェットのリストを設定する。
- `controller`: テキストコントローラーを設定する。
- `focusNode`: フォーカスノードを設定する。
- `decoration`: 検索バーの装飾を設定する。
- `maxWidth`: 検索バーの最大幅を設定する。
- `breakpoint`: レスポンシブ対応のブレークポイントを設定する。
## 注意点
- デスクトップモードでは、`maxWidth`が適用され、検索バーが中央に配置される。
- モバイルモードでは、画面幅いっぱいに検索バーが表示される。
- `onSearch`は、Enterキーを押すか、検索アイコンをタップした時に呼び出される。
- `onChanged`は、テキストが変更される度に呼び出される。
- `UniversalScaffold`と組み合わせることで、より柔軟なレイアウトが可能。
""";
}