I got to see Plants vs. Zombies 2 running at E3, and the game looked essentially done. That's why this news is so surprising. PopCap has tweeted that the title has been delayed from its July 18 launch to "sometime later on this summer." Note that it will still premiere on iOS.
There could be several reasons for this. PopCap is part of EA, so perhaps the title must go through extra quality reviews, or maybe July 18 conflicts with something else in EA's lineup. It's also possible that PopCap wants to leverage other additions to the Plants vs. Zombies empire (the company is working on a cheeky third-person shooter based on the popular franchise).
There are also some concerns from E3 about the game's freemium elements. Unlike the original game, Plants vs. Zombies 2 is free to play, but dependent on in-app purchases for revenue. So it's possible that PopCap is reconsidering, or at least tweaking, those elements.
We won't know for sure until we see the game again, which will hopefully be soon. Plants vs. Zombies 2 (which is somewhat ironically titled "It's About Time") is now set to arrive later this summer.