1

本当に単純なはずのことをやっていますが、理解できない奇妙な結果が見られます。

私は、それが実行されているデバイスのサイズであるa のUIImageView内部 (およびサイズ)を持っています。これらはすべて IB で定義されています。UIScrollViewiOS

デリゲートメソッドを定義しています

- (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この動作を引き起こすプロパティを誤って設定または設定解除したに違いないように思えますが、それが何であるかはまだわかりません。

提案のヒントは大歓迎です。

4

1 に答える 1