iPhone 5 の大きな画面用に iPhone アプリを更新していますが、 に問題があるようanimateWithDuration:
です。自動レイアウトをオンにする前は、UITextField がファーストレスポンダーになるとインターフェイス要素が画面のわずかに上に移動し、UITextField がファーストレスポンダーのステータスを失うと元の位置に戻りました。今、彼らは無計画に画面から飛んだり消えたりしていますが、その理由はわかりません. 以下のコードでオブジェクトを移動します (これは autolayout をオフにして動作しました):
[UIView animateWithDuration:.25 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
int offset = 160;
[object1 setFrame:CGRectMake(0, -offset, object1.frame.size.width, object1.frame.size.height)];
[object2 setFrame:CGRectMake(object2.frame.origin.x, object2.frame.origin.y-offset, object2.frame.size.width, object2.frame.size.height)];
[object3 setFrame:CGRectMake(object3.frame.origin.x, object3.frame.origin.y-offset, object3.frame.size.width, object3.frame.size.height)];
}
completion:^(BOOL finished){}];
定数でオブジェクトを移動しようとすることと関係がありますか? に設定offset
しても0
、すべてのオブジェクトが画面から飛び出します。デバイスの画面を検出し、オブジェクトをさまざまな量だけ移動しようとしましたが、それもうまくいきませんでした。誰にもアイデアはありますか?
前もって感謝します!