I made a quick video here:

Which sums up the issue nicely.  Basically, the notifications which we create in one view affect the entire app, regardless of view.  This means the Done button will appear in all the views, and all the keyboards no matter what.

Edit:

After looking around, I found that if you are running a multiview application and don’t want to have Done Buttons appearing all over the place, you can stop the notifications by adding this:

-(void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[[NSNotificationCenter defaultCenter] removeObserver:self];
}