MissingReferenceException: The object of type 'RectTransform' has been destroyed but you are still trying to access it.

MissingReferenceException: The object of type ‘RectTransform’ has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object.
UnityEngine.Component.GetComponent[TacticInfo] () (at C:/buildslave/unity/build/artifacts/generated/common/runtime/ComponentBindings.gen.cs:48)
OnEnterGame.Start () (at Assets/Scripts/OnEnterScenes/OnEnterGame.cs:57)

void Start () {
    lineup = InfoLoader.user.lineups[InfoLoader.user.lastLineupSelected];
    board = Instantiate(Resources.Load<GameObject>("Board/" + lineup.boardName + "/Board"));
    boardSetup = board.GetComponent<BoardSetup>();
    boardSetup.Setup(lineup, true);  // Set up Player Lineup
    boardSetup.Setup(new EnemyLineup(), false);  // Set up Enemy Lineup
    // Set up Player Info
    playerName.text = InfoLoader.user.username;
    playerWin.text = "Win%: "+InfoLoader.user.total.percentage.ToString();
    playerRank.text = "Rank: " + InfoLoader.user.rank.ToString();
    // Set up Opponent Info
    opponentName.text = "Opponent";
    opponentWin.text = "Win%: 80.00";
    opponentRank.text = "Rank: 9900";
    // SetupTactics
    for (int i = 0; i < LineupBuilder.tacticsLimit; i++)
        Transform tacticSlot = tacticBag.Find(String.Format("TacticSlot{0}", i));
        tacticObjs_.GetComponent<TacticInfo>().SetAttributes(InfoLoader.FindTacticAttributes(lineup.tactics*)); // BUG!!!*_

Hello guys. I met this problem when I switched scene back and forth. The script where this code snippet belongs to is in a scene called GameMode. When I first entered GameMode, everything was ok. And I got out of the scene immediately, which means I didn’t change anything (Of course, the problem is still there after I do something), and do LoadScene(“GameMode”), this problem occurs. What should I do?
The problem is the second last line. I didn’t destroy it.

I figured out this bug.

I declared private List<Tranfrom> tacticObjs = new List <Transform>() in the declaration area. So I guess after I switch scene the Transforms in it are destroyed. When I switch back, the list is not emptied and I am still accessing the previous Tranforms. So the solution is quite simple. Just put tacticObjs = new List <Transform>() before the for loop.

Good day.
I did not read the code,

If it says is destroyed, is destroyed.
If you are changing scenes. When “exit” a scene, all objects are destroyed, so yes, you are destroying it.

Try to be sure what object are you trying to access.