saving sprite selected between scenes

I have a simply (or so I thought) little game that loads a 2d virtual phone screen with clickable apps. I’m trying to find a way to save sprite image from one scene to another. A player can choose from a selection of different backgrounds for the virtual phone screen, and keep it or change it as they go. Now, where I’m struggling is finding a script or help with saving the selected sprite between screens. I’ve tried, forums, external sites, YouTube and books but can’t find an answer anywhere. I’ve looked at playerprefs but won’t save a selected sprite between scenes and Donotdestroyobject, neither have worked. I’ve hit the wall as they say and any help with this would be a relief if anything.

Use DontDestroyOnLoad (Unity - Scripting API: Object.DontDestroyOnLoad). Objects marked with that are not destroyed when changing scenes.

For example, you can give the sprite to a script for safekeeping.

public class SomeScript : MonoBehaviour
{
    public Sprite theSprite;

    void Awake()
    {
        DontDestroyOnLoad(this.gameObject);
    }
}