You can disable the userInteraction for that button when user taps for first time.
Then new view controller will appear, while leaving to new View Controller call this
-(IBAction)btnAction:(UIButton *)sender { sender.userInteractionEnabled=NO; //do your code }
if it is moving to another view then call below one
-(void)viewWillDisappear { buttonName.userInteractionEnabled=YES; }
if not moving from present view you can call
sender.userInteractionEnabled=YES;
at the end of btnAction method.
It will work for sure.