Creating a list of widgets from map with keys and valuesHow to specify the output directory for Dart's “pub deploy”?how to define a variable of type “function”? (using optional typing)Switching on class type in DartFlutter - Create a countdown widgettype 'List<dynamic>' is not a subtype of type 'List<Widget>'What are Keys in the Stateless widgets class?Creating widgets based on a listHow to create flutter list linear gradien widget?Flutter: Question about async function to retrieve Firebase user IDWhat is the difference between functions and classes to create widgets?
Is possible to search in vim history?
Reply 'no position' while the job posting is still there
Why in book's example is used 言葉(ことば) instead of 言語(げんご)?
How do I extrude a face to a single vertex
What is this type of notehead called?
How to align and center standalone amsmath equations?
What linear sensor for a keyboard?
How can Trident be so inexpensive? Will it orbit Triton or just do a (slow) flyby?
Frequency of inspection at vegan restaurants
A Permanent Norse Presence in America
Indicating multiple different modes of speech (fantasy language or telepathy)
What does the Rambam mean when he says that the planets have souls?
Using a siddur to Daven from in a seforim store
List of people who lose a child in תנ"ך
Flux received by a negative charge
Did arcade monitors have same pixel aspect ratio as TV sets?
Should I stop contributing to retirement accounts?
Is there a word to describe the feeling of being transfixed out of horror?
How do I implement a file system driver driver in Linux?
Does the Mind Blank spell prevent the target from being frightened?
Freedom of speech and where it applies
What (else) happened July 1st 1858 in London?
My friend sent me a screenshot of a transaction hash, but when I search for it I find divergent data. What happened?
Engineer refusing to file/disclose patents
Creating a list of widgets from map with keys and values
How to specify the output directory for Dart's “pub deploy”?how to define a variable of type “function”? (using optional typing)Switching on class type in DartFlutter - Create a countdown widgettype 'List<dynamic>' is not a subtype of type 'List<Widget>'What are Keys in the Stateless widgets class?Creating widgets based on a listHow to create flutter list linear gradien widget?Flutter: Question about async function to retrieve Firebase user IDWhat is the difference between functions and classes to create widgets?
If I have say a SimpleDialog()
and it accepts children[]
and I want to populate it from a Map<int, String>
, how would I do that? I need both the key and value to create the child widget.
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: // I don't know what to put here
// I want to have widgets based on optionsMap keys and values
)
I solved it by creating a List<Widget>
beforehand above the return statement, but just for convenience (and becoming better in Dart) I'd like to know if there's a way to do it inline.
dart flutter
add a comment |
If I have say a SimpleDialog()
and it accepts children[]
and I want to populate it from a Map<int, String>
, how would I do that? I need both the key and value to create the child widget.
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: // I don't know what to put here
// I want to have widgets based on optionsMap keys and values
)
I solved it by creating a List<Widget>
beforehand above the return statement, but just for convenience (and becoming better in Dart) I'd like to know if there's a way to do it inline.
dart flutter
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.
– Luksprog
Mar 7 at 9:40
Using aListView
and converting your map into a list should work
– Willy
Mar 7 at 9:44
add a comment |
If I have say a SimpleDialog()
and it accepts children[]
and I want to populate it from a Map<int, String>
, how would I do that? I need both the key and value to create the child widget.
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: // I don't know what to put here
// I want to have widgets based on optionsMap keys and values
)
I solved it by creating a List<Widget>
beforehand above the return statement, but just for convenience (and becoming better in Dart) I'd like to know if there's a way to do it inline.
dart flutter
If I have say a SimpleDialog()
and it accepts children[]
and I want to populate it from a Map<int, String>
, how would I do that? I need both the key and value to create the child widget.
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: // I don't know what to put here
// I want to have widgets based on optionsMap keys and values
)
I solved it by creating a List<Widget>
beforehand above the return statement, but just for convenience (and becoming better in Dart) I'd like to know if there's a way to do it inline.
dart flutter
dart flutter
edited Mar 7 at 9:18
TimSim
asked Mar 7 at 9:06
TimSimTimSim
1,20732860
1,20732860
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.
– Luksprog
Mar 7 at 9:40
Using aListView
and converting your map into a list should work
– Willy
Mar 7 at 9:44
add a comment |
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.
– Luksprog
Mar 7 at 9:40
Using aListView
and converting your map into a list should work
– Willy
Mar 7 at 9:44
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:
children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.– Luksprog
Mar 7 at 9:40
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:
children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.– Luksprog
Mar 7 at 9:40
Using a
ListView
and converting your map into a list should work– Willy
Mar 7 at 9:44
Using a
ListView
and converting your map into a list should work– Willy
Mar 7 at 9:44
add a comment |
1 Answer
1
active
oldest
votes
Update answer to incorporate @lrn 's comment
You can use map
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: optionsMap.entries.map((entry)
var w = Text(entry.value);
doSomething(entry.key);
return w;
).toList());
;
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.
– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to havetoList()
– TruongSinh
Mar 8 at 1:17
I didn't know aboutentries
property, that makes dealing with maps so much easier.
– TimSim
Mar 9 at 10:25
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55039861%2fcreating-a-list-of-widgets-from-map-with-keys-and-values%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Update answer to incorporate @lrn 's comment
You can use map
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: optionsMap.entries.map((entry)
var w = Text(entry.value);
doSomething(entry.key);
return w;
).toList());
;
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.
– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to havetoList()
– TruongSinh
Mar 8 at 1:17
I didn't know aboutentries
property, that makes dealing with maps so much easier.
– TimSim
Mar 9 at 10:25
add a comment |
Update answer to incorporate @lrn 's comment
You can use map
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: optionsMap.entries.map((entry)
var w = Text(entry.value);
doSomething(entry.key);
return w;
).toList());
;
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.
– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to havetoList()
– TruongSinh
Mar 8 at 1:17
I didn't know aboutentries
property, that makes dealing with maps so much easier.
– TimSim
Mar 9 at 10:25
add a comment |
Update answer to incorporate @lrn 's comment
You can use map
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: optionsMap.entries.map((entry)
var w = Text(entry.value);
doSomething(entry.key);
return w;
).toList());
;
Update answer to incorporate @lrn 's comment
You can use map
const optionsMap =
111:"First option",
222:"Second option",
return SimpleDialog(
title: Text('Choose one'),
children: optionsMap.entries.map((entry)
var w = Text(entry.value);
doSomething(entry.key);
return w;
).toList());
;
edited Mar 8 at 1:22
answered Mar 7 at 10:50
TruongSinhTruongSinh
1,518822
1,518822
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.
– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to havetoList()
– TruongSinh
Mar 8 at 1:17
I didn't know aboutentries
property, that makes dealing with maps so much easier.
– TimSim
Mar 9 at 10:25
add a comment |
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.
– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to havetoList()
– TruongSinh
Mar 8 at 1:17
I didn't know aboutentries
property, that makes dealing with maps so much easier.
– TimSim
Mar 9 at 10:25
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
I want to be able to access both keys and values.
– TimSim
Mar 7 at 10:53
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
update my answer to have both keys and values
– TruongSinh
Mar 7 at 11:01
Slightly simpler:
optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.– lrn
Mar 7 at 15:09
Slightly simpler:
optionsMap.entries.map((entry) var w = Text(entry.value); doSomething(key); return w; )
. So, instead of creating a map and using only the values, just create the values as an iterable.– lrn
Mar 7 at 15:09
@irn thanks, but did you try you code? I think you will still ned to to have
toList()
– TruongSinh
Mar 8 at 1:17
@irn thanks, but did you try you code? I think you will still ned to to have
toList()
– TruongSinh
Mar 8 at 1:17
I didn't know about
entries
property, that makes dealing with maps so much easier.– TimSim
Mar 9 at 10:25
I didn't know about
entries
property, that makes dealing with maps so much easier.– TimSim
Mar 9 at 10:25
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55039861%2fcreating-a-list-of-widgets-from-map-with-keys-and-values%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
You could use the Map.map() function to obtain a new Map<int, Widget> and then use this new map's values:
children : options.map((entry) return MapEntry<int, Widget>(entry.key, /*here create the widget from entry.key and entry.value*/);).values.toList()
.– Luksprog
Mar 7 at 9:40
Using a
ListView
and converting your map into a list should work– Willy
Mar 7 at 9:44