問題は次のとおりです。
ある瞬間、ボタンの位置が変わります。これに続いて、ボタンのタイトルも変更する必要があります。
アニメーション(UIViewアニメーションブロック)で位置を変更し、タイトルを設定するとフレームが元の値(アニメーション前)に戻ります。
それで...どうすれば修正できますか?そして、なぜそれが起こるのですか?
コードで更新
CGRect buttonFrame = self.button.frame;
buttonFrame.origin = CGPointMake(16, 80);
[UIView animateWithDuration:.4 animations:^{
[self.button setFrame:buttonFrame];
}completion:^(BOOL finished){
[self.button setTitle:@"Title" forState:UIControlStateNormal]; // can be here...
}];
setTitle:ForState: メソッドをどこに配置しても、フレームは元の値に戻ります。