gpt4 book ai didi

list - Flutter:使用来自另一个类的链接ID导入正确的颜色值

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

我想访问另一个类(类RubricItem)中的列表中的数据。颜色必须是具有相应ID的颜色。

然后,我想将我从RubricItem类调用的列表中的数据插入到Colors类中的列表中。在Colors类中是参数id :。根据我输入的ID,我的“rubricColor:”应该知道其值。

例:

我从Colors类'BlueAccent'写下列表的ID值,然后他还必须知道必须用rubricColor:编写哪种颜色。他在Colors类的id:处看到“BlueAccent”,并将其与RubricItem类的列表中的id:进行比较,并在RubricItem类的同一列表中看到颜色值,并在Colors列表中看到我的rubricColor:值类,从RubricItem类的列表中获取color的值。

我希望你明白我的意思。
我很难解释。
RubricItem类:

class _RubricItemState extends State<RubricItem> {
final List<Rubric> rubrics = [
Rubric(
id: 'BlueAccent',
title: "BLUEACCENT",
color: Colors.blueAccent,
icon: 'assets/icons/blueAC.png',
),
Rubric(
id: "Pink",
title: "PINK",
color: Colors.pinkAccent,
icon: 'assets/icons/PINK.png',
),
Rubric(
id: 'GreenAccent',
title: "GREENACCENT",
color: Colors.greenAccent,
icon: 'assets/icons/GreenAccent.png',
),
];
...

颜色类别列表:
final List<Colorr> colors = [
Colorr(
id: 'BlueAccent', // with this id he should be find the id in the List of the RubricItem() class
title: 'Blabla',
rubric: '',
rubricColor: , //(RubricItemColor)
),
];

最佳答案

使用 map 而不是列表。

map<String, Rubric>
map<String, Colorr>

字符串是id。然后只需使用ID

编辑1:示例

我不知道这是否是解决您问题的最佳方法,但它确实有效。

我将 map 的键用作ID,并从Rubric类和Colorr类中都删除了ID。
import 'package:flutter/material.dart';
void main() {

final Map<String,Rubric> rubrics = {
'BlueAccent': Rubric(title:'BLUEACCENT',color: Colors.blueAccent, icon: 'assets/icons/blueAC.png'),
};
final Map<String, Colorr> colors = {
'BlueAccent': Colorr(title: 'title', rubric:rubrics['BlueAccent'],rubricColor: rubrics['BlueAccent'].color),
};
}


class Rubric{
Rubric({this.title,this.icon,this.color});
final String title;
final Color color;
final String icon;
}

class Colorr{
Colorr({this.title,this.rubric,this.rubricColor});
final String title;
final Rubric rubric;
final Color rubricColor;
}

关于list - Flutter:使用来自另一个类的链接ID导入正确的颜色值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61426962/

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