Tinyrack

Accordion

一度に 1 つまたは複数のセクションを展開できる開閉項目を積み重ねます。

一度に 1 つまたは複数のセクションを展開できる開閉項目を積み重ねます。

主なプロパティ

プロパティ説明
選択value で制御、または defaultValue で非制御
展開既定は単一展開。multiple で複数の項目を同時に開けます
利用可否個別の TRAccordionItem を無効にできます
ライフサイクル閉じたコンテンツはウィジェットツリーから取り除かれます

value を指定した場合は、操作に応じてパネルが変わるよう onValueChange から値を更新してください。Tab は通常のフォーカス順序に従い、Enter はすぐに、Space はキーを離したときに切り替えます。無効な項目はポインターとキーボードの操作を無視します。

インストール

パッケージを追加し、公開ライブラリをインポートしてください。

flutter pub add tinyrack_ui
import 'package:tinyrack_ui/tinyrack_ui.dart';

プレイグラウンド

使用方法

import 'package:material_ui/material_ui.dart';
import 'package:tinyrack_ui/tinyrack_ui.dart';

TRAccordion(
  items: const [
    TRAccordionItem(
      value: 'install',
      trigger: Text('Install'),
      content: Text('Run the installer.'),
    ),
  ],
)

制御付き複数展開 パーマリンク

onValueChange から value を更新すると、各セクションを開閉でき、現在の選択も表示できます。

単一・複数展開と無効状態 パーマリンク

排他的なセクションには既定の単一展開、独立したセクションには multiple、利用できない項目には disabled を使います。

API

TRAccordion のプロパティ

Prop型 / デフォルト用途
itemsList<TRAccordionItem> · required順序付きの開閉項目を定義します。
valueList<String>? · null開いている項目の値を制御します。
defaultValueList<String> · const []非制御モードで最初に開く値を指定します。
multiplebool · false複数の項目を同時に開いたままにします。
onValueChangeValueChanged<List<String>>? · null項目を切り替えた後の開いている値を通知します。

TRAccordionItem のプロパティ

Prop型 / デフォルト用途
valueString · requiredRoot の値リスト内で項目を識別します。
triggerWidget · required操作可能な項目ラベルを表示します。
contentWidget · required項目が開いている間、パネルを表示します。
disabledbool · falseポインターとキーボードによる切り替えを無効にします。