Flutter will permanently re-render the photos from a BASE64 string when another widget calls the SetState () method. Apparently the framework does not compare the BASE64 strings, so an already existing photo is treated as a new one.

Flutter creates objects from a JSON string and displays them with the ListVew.builder. In the JSON string, I also embedded photos as BASE64. Unfortunately, the photos are rendered again when another item (for example, a RadioGroup) is changed.

The Flutter framework does not seem to 'know' that it's always the same photo.

Is there an elegant way to avoid rendering again?

Image.memory(base64Decode(uiValues.data[currentData].elements[currentElement].innerElements[currentInnerElement].base64String))