【发布时间】:2019-05-19 11:40:32
【问题描述】:
我正在尝试颤动,这里我有一个简单的卡片视图,其中有一个 add AddButton ,当按下按钮时,正在添加新卡片。
现在,我想让它可以滚动,所以在 Column 中添加了 ListView 和扩展的 Widget。这是代码...
import 'package:flutter/material.dart';
import './products.dart';
import './product_control.dart';
class ProductManger extends StatefulWidget {
final String startingProduct;
ProductManger({this.startingProduct = "Sweet Tester"});
@override
State<StatefulWidget> createState() {
return _ProductManagerState();
}
}
class _ProductManagerState extends State<ProductManger> {
List<String> _products = ['Food Tester'];
@override
void initState() {
_products.add(widget.startingProduct);
super.initState();
}
void _addProducts(String product) {
setState(() {
_products.add(product);
});
}
@override
Widget build(BuildContext context) {
return Column(children: [
Container(margin: EdgeInsets.all(10.0), child: ProductControl(_addProducts)),
Expanded(child: Products(_products))
]);
}
}
如果我将 Expanded 更改为具有高度的 Container,它会按预期工作,但现在除了一个按钮之外什么都没有显示。
我目前正在学习一个教程,编写了完全相同的代码,但是,flutter 的版本是 0.3.2,我使用的是 1.5
还是模拟器有问题?
希望这可以帮助。
这里是listView代码
import 'package:flutter/material.dart';
class Products extends StatelessWidget {
final List<String> products;
Products([this.products = const []]);
@override
Widget build(BuildContext context) {
return ListView(
children: products
.map((element) => Card(
child: Column(
children: <Widget>[
Image.asset('assets/food.jpg'),
Text(element)
],
),
))
.toList());
}
}
【问题讨论】:
-
你在哪里使用
ListView? -
它在另一个文件中,现在发布它
-
有什么想法吗???
-
实际上您的代码似乎没有任何问题
-
这就是困扰我的问题,让我换个模拟器,会是这个原因吗?