I have a list of objects with keys title, text and title again:
"data": [
{
"type": "title",
"data": "Dashboard"
},
{
"type": "text",
"data": "This is your dashboard.."
},
{
"type": "title",
"data": "Fees"
},
]
I am able to show these key values of key data on the screen:
I want to have a space between text and title if title comes after text. So i made an if else statement which substracts the index with 1 and check if the previous index contains key value text and then i want to show a SizedBox else i want to show an empty Container:
if ((json[index - 1]['type'] == "text")
SizedBox(height: 10)
else
Container(),
But i get error: RangeError (index): Invalid value: Not in inclusive range 0..3: -1
This means that it also substracts the first index with the key value title and that is the reason i get index vallue -1 back. So my question is how can i show SizedBox after text and then also resolve the error above?
CodePudding user response:
that's easily fixed by checking if the index is not 0, so change it to
if (index != 0 && json[index - 1]['type'] == "text")

