gpt4 book ai didi

flutter - 无法将参数类型 'Color'分配给参数类型 'int'

转载 作者:行者123 更新时间:2023-12-03 04:19:53 24 4
gpt4 key购买 nike

我是 Dart 编程新手。
我发现有关我的问题的错误,这是关于“我创建了一个模型类和一个列表,该模型类具有类型为 Color 的成员,然后在 main.dart 中,我想显示我的模型列表数据在 ListView.builder 中,但是当在容器的单独窗口小部件中时,其他所有操作都正常,但是color属性给出了错误,我尝试更改索引参数的类型,但错误仍然存​​在。”
这是代码:

import 'package:flutter/material.dart';

class ProductModel {

ProductModel(
this.title,
this.name,
this.image,
this.color
);

final String title;
final String name;
final String image;
final Color color;
}

final modelProduct = <ProductModel>[
ProductModel(
"titile1",
"name1",
"https://image.freepik.com/free-vector/multitasking-concept-illustration-character_23-2148403716.jpg",
Colors.pink.withOpacity(0.4),
),
ProductModel(
"titile2",
"name2",
"https://image.freepik.com/free-vector/people-putting-puzzle-pieces-together_52683-28610.jpg",
Colors.blue.withOpacity(0.4),
),
ProductModel(
"titile3",
"name3",
"https://image.freepik.com/free-vector/people-using-online-apps-set_74855-4457.jpg",
Colors.yellow.withOpacity(0.4),
),
]
main.dart
我跳过了第一个 flutter 的样板代码,只是复制了我最关心的事情,
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Container(
child: ListView.builder(
itemCount: modelProduct.length,
itemBuilder: (context, index) {
return createItem(context, index);
})),
);
}
}

Widget createItem(BuildContext context, index) {
return Container(
height: MediaQuery.of(context).size.height * 0.3,
width: MediaQuery.of(context).size.width,
child: Text(modelProduct[index].title),
color: Color(modelProduct[index].color),
);
}
问题在于 颜色:Color(modelProduct [index] .color)此行
,错误是
The argument type 'Color' can't be assigned to the parameter type 'int'.
但是我知道如果我在模型类中将颜色的类型转换为int并提供像0xFFFFFF这样的color的int类型值,那么错误就可以解决,但是我的问题是我是否要使用上面使用的 Material 颜色,如何处理。
谢谢

最佳答案

您可以直接使用color: modelProduct[index].color程式码片段

return Container(
height: MediaQuery.of(context).size.height * 0.3,
width: MediaQuery.of(context).size.width,
child: Text(modelProduct[index].title),
color: modelProduct[index].color,
);

关于flutter - 无法将参数类型 'Color'分配给参数类型 'int',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63333780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com