In 2005, Warner Bros. began production on Batman Begins, the first film in what would become the Dark Knight trilogy. The movie was a critical and commercial success, with many praising its dark and realistic tone. One of the breakout stars of the film was Katie Holmes, who played Bruce Wayne's love interest Rachel Dawes.
However, when it came time to shoot the sequel The Dark Knight (2008), Holmes was not available to reprise her role. According to some reports, this was because she was pregnant with her daughter Suri at the time. Others have said that she simply didn't want to return for the sequel. Whatever the reason, Warner Bros. decided to replace her with Maggie Gyllenhaal.
Gyllenhaal did a great job in the role and there were no hard feelings between her and Holmes. In fact, the two actresses are now good friends. So while we may never know exactly why Katie Holmes left Batman, we're glad that Maggie Gyllenhaal stepped in and saved the day!