お問い合わせ
  • アプリ開発

FlutterFlow ドロップダウン表示項目を動的なデータ型にする方法

FlutterFlowではドロップダウンの項目も直感的にノーコードで指定ができて使い勝手が良いのですが、動的に項目を作成、特に「外部APIから得たデータリストをドロップダウン項目に設定したい場合」はちょっとした工夫が必要です。

この記事ではその設定方法についてご紹介します。

 

ドロップダウン項目を設定する(固定値)

画面に DropDownウィジェットを追加した直後の状態です。

Define Options 欄で必要な分だけ項目を追加、表示テキストを設定する方法です。

  • ドロップダウン項目数が固定で決まっている

場合は、この方法でOKです。

ドロップダウン項目を設定する(APIコールを用いた動的作成)

APIコールのレスポンス内容を元に動的にドロップダウン項目を構成する方法です。

 

APIコールしてレスポンスを格納

例えばレスポンスのデータ構造が以下のような形式の都道府県のデータだとします。

 

[
  {
    "id": 1,
    "name": "北海道"
  },
  {
    "id": 2,
    "name": "青森県"
  },
  {
    "id": 3,
    "name": "岩手県"
  },
  {
    "id": 4,
    "name": "宮城県"
  },
  :
  :
  :
]

IDと都道府県名からなるリスト構造で、「都道府県名の部分を抽出してドロップダウン項目に設定したい」、というシチュエーションです。

 

データタイプの作成

idとnameを持つデータタイプを新規作成し、APIコールの設定でレスポンスのJSONを作成したデータタイプとして扱うように設定します。

 

データタイプ Prefecture を作成

 

APIのレスポンスを割り当てるデータタイプの設定

 

APIをコールする

ページ画面の初期化時にAPIをコールするように設定します。

 

Query Typeは「API Call」、Group of Call Nameは「データ取得する該当のAPI」を選択します。

 

ドロップダウン項目の調整

固定で「選択肢1、2,3」という項目になっている部分を調整します。

具体的には

「APIで取得したデータ(都道府県のidとnameのリスト)を参照させ、都道府県データの name (都道府県名のテキスト)をドップダウン項目に設定する」

を実現するために、以下の手順で設定を行います。

 

矢印の箇所をクリックします。

 

APIコールで選択したAPI名の Response を選択します。

 

API Response Option 項目を 「As Data Type」、Available Options 項目を「Map List Items」を選択し、矢印部分の「Item in List」をクリックします。

 

Available Options 項目を「Data Structure Field」を選択し、Select Field 項目を「name」を選択し、Confirmをクリックします。

 

ドロップダウン項目欄に固定値のテキストから以下のような表示に変わるかと思います。

 

実行して確認

固定だった「選択肢1,2、3」ではなくAPIのレスポンス内容が反映されました!

この様に外部のAPIから得たデータをドロップダウン項目のテキストに設定することもFlutterFlowではノーコードで実現可能です

ドコドア エンジニア部

ドコドア エンジニア部

Flutterなどの技術を活用し、ユーザーにとって価値ある高品質なモバイルアプリ・Webアプリの開発に取り組んでいます。
このブログでは、アプリ開発の現場で培ったフロントエンド、バックエンド、インフラ構築の知識から生成AI活用のノウハウまで、実践的な情報をアプリ開発に悩む皆様へ向けて発信しています!
【主な技術スタック】 Flutter / Firebase / Svelte / AWS / GCP / OpenAI API

Contact Us

Web制作、Webマーケティング、SFA・MA導入支援に関するお悩みがある方は、お気軽にご相談ください。

お問い合わせ・ご相談

ホームページ制作、マーケティングにおける
ご相談はお気軽にご連絡ください。

資料請求

会社案内や制作実績についての資料を
ご希望の方はこちらから。

お電話でのお問い合わせ

お電話でのご相談も受け付けております。

※コールセンターに繋がりますが、営業時間内は即日
担当より折り返しご連絡をさせて頂きます。

9:00-18:00 土日祝休み

電話する 無料相談はこちら