在下拉菜单中选择项目,然后在卡片中显示卡片列表

时间:2019-10-09 19:00:51

标签: flutter dart flutter-layout

我有一个包含下拉菜单的页面,在其中选择一个项目时,我必须根据所选项目显示一张牌列表。

当前,我的问题是,当我在下拉列表中选择一项时,什么也没发生。

VsCode和调试器未显示任何错误,但页面中未显示任何内容。

import 'package:flutter/material.dart';

import 'dart:ui';


class Item {
  final String name;
  final String adress;
  final String age;
  Item({@required this.name, @required this.adress, @required this.age});
}



class Places extends StatefulWidget {


@override
  State<StatefulWidget> createState() {

    return _PlacesState() ;
  }
}
class _PlacesState extends State<Places>{
   List<Item> places=[
    Item(name: 'bola',
    adress: 'maadi',
    age: '230'),
    Item(name: 'ahmed',
    adress: 'helwan',
    age: '240')
  ];



  Widget  _buildProductItem() {
   return ListView.builder(
      itemBuilder: (BuildContext context,int index){
          return Card(
      child: Column(
        children: <Widget>[

          Text(places[index].name, style: TextStyle(color: Colors.deepPurple))
        ],
      ),
    );
      }, 
      itemCount: places.length,
    ); 
  }
    Widget _buildDropDown(BuildContext context){
return  DropdownButton<String>(
  items: <String>['A', 'B', 'C', 'D'].map((String value) {
    return  DropdownMenuItem<String>(
      value: value,
      child:  Text(value),
    );
  }).toList(),
   onChanged: (value) {
if (value=='A'){
 return _buildProductItem();
  }




    },
  );
    }

    @override
    Widget build(BuildContext context) {
      return _buildDropDown(context);
    }
  }

0 个答案:

没有答案