Flutter 下拉选择组件实现:DropdownButton Widget 使用指南

在 Flutter 中,可以使用 DropdownButton Widget 轻松创建下拉选择菜单。本文将详细介绍如何使用 DropdownButton 创建下拉选择组件,并提供完整的代码示例。

1. 导入 DropdownButton 组件

首先,需要在代码中导入 DropdownButton 组件:

import 'package:flutter/material.dart';

2. 定义下拉选择数据

接下来,需要定义下拉选择菜单中的数据。以下代码示例定义了一个包含五个字符串的列表:

List<String> _dropdownItems = [
  'Item 1',
  'Item 2',
  'Item 3',
  'Item 4',
  'Item 5'
];

String _selectedItem = 'Item 1'; // 默认选中的项

3. 创建下拉选择 Widget

使用 DropdownButton Widget 创建下拉选择菜单,并配置其属性:

DropdownButton<String>(  
  value: _selectedItem, // 当前选中的项
  items: _dropdownItems.map((String item) {
    return DropdownMenuItem<String>(  
      value: item,
      child: Text(item),
    );
  }).toList(),
  onChanged: (String newValue) {
    setState(() {
      _selectedItem = newValue;
    });
  },
)

在上述代码中:

  • value 属性表示当前选中的项。
  • items 属性表示下拉列表中的选项。
  • onChanged 属性表示当用户选择下拉列表中的某个选项时触发的回调函数。

4. 完整代码示例

以下代码展示了如何将 DropdownButton Widget 整合到一个 Flutter 应用中:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  List<String> _dropdownItems = [
    'Item 1',
    'Item 2',
    'Item 3',
    'Item 4',
    'Item 5'
  ];

  String _selectedItem = 'Item 1';

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: DropdownButton<String>(  
          value: _selectedItem,
          items: _dropdownItems.map((String item) {
            return DropdownMenuItem<String>(  
              value: item,
              child: Text(item),
            );
          }).toList(),
          onChanged: (String newValue) {
            setState(() {
              _selectedItem = newValue;
            });
          },
        ),
      ),
    );
  }
}

总结

本文介绍了如何在 Flutter 中使用 DropdownButton Widget 创建下拉选择菜单。通过定义数据、创建 Widget 以及处理选择事件,可以轻松实现功能丰富的下拉选择组件。你可以根据自己的需求对代码进行修改和优化。

Flutter 下拉选择组件实现:DropdownButton Widget 使用指南

原文地址: https://www.cveoy.top/t/topic/muRI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录