0
我有一個自定義FrameLayout類,它在OnSizeChanged事件上做一些自定義繪圖。它是在那裏完成的,而不是在OnDraw事件中,以避免重入和性能問題。這在單個活動應用程序中正常工作,但在TabActivity中失敗。當前選項卡中的活動呈現正常,但非活動選項卡中的活動未呈現。 Here你可以下載一個重現此項目的示例項目。該項目是HelloTabWidget,但也使用HelloAndroid項目。自定義FrameLayout不在TabActivity中渲染
發現onWindowVisibilityChanged事件可能有幫助,但需要找到足夠的大小來繪製我的控件。在下面的代碼片段中,我需要一種方法來在onWindowVisibilityChanged中查找容器的大小。
@Override
protected void onWindowVisibilityChanged(int visibility) {
super.onWindowVisibilityChanged(visibility);
int width = this.getWidth();
int height = this.getHeight();
drawContent(getCtxt(), width, height);
}