Question ended, This is the answer: Link of Answer
The Answer of Miha Hribar can solve my problem.
my solution detail:
the animation has problem, so finally, the reason is about UINavigationController, not it's viewControllers(at very first, I think the bug is caused by calling viewController's lifecycle method forcelly, like below:
[viewController viewWillAppear:YES]
so I solve this question by remove the following code:
// these codes are deleted
UINavigationController *nav = self.navigationController;
[nav viewWillAppear:YES];