い適切に取り扱いの回転のUIScrollViewを含むUIImageViews?
-
26-09-2019 - |
質問
私は開発の画像ビューアだったのと同じように、写真アプリです。
このUIScrollViewとページングが可能から読み込んだ画像のインターネットので、私に適応した部分の LazyTableImagesサンプル.スクロールビューおよび各ImageView内でのすべてをそのautoresizeマスクのフラグのセットです。
初めて観察方法でリサイズしたい時の回転、家族で又宿泊したいホテルてす。でしたが、一開始しようとスクロールビューを実現しまうまでもプログラムの大きさを変更したい場合contentView.その実施didRotateFromInterfaceOrientation:私はコントローラです。
[self.scrollView setContentSize:CGSizeMake(numberOfImages * portraitWidth, [scrollView bounds].size.height)];
との相互作用を適切に行動する、そして発見されていたの写真を回転させ、上記の第1回、第2回の写真が画面に表示されるようにします。私のcontentOffsetしています。
またこの問題を修正するには二つの方法の両方を利用scrollRectToVisible:アニメ:法UIScrollViewどのように設定しcontentOffset物件。た実験によりこのコード実装の両方に"一"と"二段"の変化に対する反応。例えば:
-(void)didAnimateFirstHalfOfRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
[self.scrollView setContentOffset:CGPointMake(currentlyViewedPhotoIndex * largeImageHeight,0) animated:YES];
すべての場合も、それだけで見jankyとしての地獄である。次のいずれかのスクロールを起こし、またはそれだけでジャンプの様子。Uuuuuuuuuuugly!があるので、このように動作とまったく同じように、写真アプリは?
解決
何巻かれてい上げではなく、直前の回転開始を非表示にしますUIScrollViewをUIImageViewが現在見ているイメージです。回転させ、そのイメージを回転させて素敵なアルバムが回転が完了を削除しImageViewと表示さのスクロールす。
更新いこと現在(いつでも降iOS6)を使用しUIPageViewController設定transitionStyleにUIPageViewControllerTransitionStylescroll、crissakes.
他のヒント
私は少し違う何かをしました。 willRotateToInterfaceOrientation:duration:
では、私は、現在表示されているサブビューを除くUIScrollViewのサブビューのすべての非表示、およびdidRotateFromInterfaceOrientation:
で私はサブビューを再表示ます。