0

UIViewの幅に伸ばす必要がある がありますUIScrollView。問題は次のとおりです。問題 その UIView (EGOTableViewPullRefresh、単なるカスタム UIView) を拡張する必要があります。ビューの初期化で、[_refreshHeaderView setAutoresizingMask:UIViewAutoresizingFlexibleWidth];. 私は試した:

-(void)scrollViewDidZoom:(UIScrollView *)scrollView {
    NSLog(@"scrollViewDidZoom");
    [_refreshHeaderView setFrame:CGRectMake(0.0f, 0.0f - webScroller.bounds.size.height, webScroller.frame.size.width, webScroller.bounds.size.height)];
}

ただ、見た目はイメージ通り。iOS で設計されたページ (Mobile Google など) に入ると、問題ないように見え googleok ます。

4

1 に答える 1

2

size.widthは、UIScrollViewデバイスのビューの幅であり、スクロール ビュー内のコンテンツの幅ではありません (これは になりますscrollView.contentSize.width)。

つまり、「あなたのビュー」がスクロール ビューの外側にあるUIScrollView場合はスクロール ビューの幅が必要ですが、ビューがスクロール ビューの内側にある場合はコンテンツの幅が必要です。

提供した下部/Google スクリーンショットに注目してください。水平スクロールがないことに注意してください。この場合、スクロール ビューのコンテンツ サイズの幅はスクロール ビューの幅と同じであるため、完全に機能します。ただし、上部/スタック オーバーフローの画像には水平スクロール バーがあります。したがって、スクロール ビューのコンテンツの幅は、スクロール ビューの幅よりも大きくなります。

簡単な答え:ビューをscrollView.contentSize.widthではなくに設定してみてくださいscrollView.frame.size.width

于 2012-01-06T14:26:59.410 に答える