本当に単純なはずのことをやっていますが、理解できない奇妙な結果が見られます。
私は、それが実行されているデバイスのサイズであるa のUIImageView
内部 (およびサイズ)を持っています。これらはすべて IB で定義されています。UIScrollView
iOS
デリゲートメソッドを定義しています
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return storeImageView;
}
ズーム中に、次のデリゲート メソッドが呼び出されていることがわかります。
viewForZoomingInScrollView
viewForZoomingInScrollView
viewForZoomingInScrollView
scrollViewWillBeginZooming
scrollViewDidZoom
scrollViewDidScroll scrollView contentOffset: NSPoint: {23.675083, 18.840801}
scrollViewDidZoom
scrollViewDidScroll scrollView contentOffset: NSPoint: {44.748684, 35.630745}
… REPEATED MANY TIMES...
scrollViewDidZoom
scrollViewDidScroll scrollView contentOffset: NSPoint: {782.82373, 588.79358}
scrollViewDidZoom
scrollViewDidScroll scrollView contentOffset: NSPoint: {791.22223, 594.99152}
scrollViewDidZoom
scrollViewDidScroll scrollView contentOffset: NSPoint: {791, 595}
scrollViewDidEndZooming scale factor: 2.498063
scrollViewDidEndZooming scrollView frame: NSRect: {{0, 0}, {768, 1024}}
scrollViewDidEndZooming scrollView bounds: NSRect: {{791, 595}, {1024, 768}}
scrollViewDidEndZooming view frame: NSRect: {{0, 0}, {2558.0161, 1918.5121}}
scrollViewDidEndZooming view bounds: NSRect: {{0, 0}, {1024, 768}}
scrollViewDidEndZooming scrollView contentOffset: NSPoint: {791, 595}
scrollViewDidScroll scrollView contentOffset: NSPoint: {-0, -0}
RE-WORK IMAGE AND DRAW NOW
紛らわしく、画像がシフトする原因は、最後の{0,0} へscrollViewDidScroll
のリセットです。contentOffset
この動作を引き起こすプロパティを誤って設定または設定解除したに違いないように思えますが、それが何であるかはまだわかりません。
提案のヒントは大歓迎です。