WebView を含むカスタム ビューがあります。私のカスタムビューは独自のレイアウトを実行し、サブビューのサイズを変更するためresizeWithOldSuperviewSize:
に呼び出します。resizeSubviewsWithOldSize:
私のカスタム ビューには、WebView、NSTextField、および別のカスタム ビューが含まれています。NSTextField とカスタム ビューは、ウィンドウのサイズの変更に非常にうまく反応しますが、私の WebView は元のサイズのままです。
編集: WebViewの位置は期待どおりに変更されますが、サイズは変更されないことに注意してください。
- (void)resizeSubviewsWithOldSize:(NSSize)oldSize
{
NSRect superBounds = self.superview.bounds;
// ... set frames on other subviews; works fine ...
// Move the WebView
NSRect oldFrame = webView.frame;
[self setNeedsDisplayInRect:oldFrame];
NSRect newFrame = NSMakeRect(superBounds.origin.x, 55.0, superBounds.size.width, superBounds.size.height - 55.0);
[webView setFrame:newFrame];
// This doesn't work:
// [[[[webView mainFrame] frameView] documentView] setNeedsDisplay:YES];
// Neither does this:
// [webView setNeedsDisplayInRect:newFrame];
}
助言がありますか?