min*_*ini 8 android android-widget
我想确定它的宽度和高度WebView.我已经尝试过使用:
webView.getWidth();
webView.getHeight();
Run Code Online (Sandbox Code Playgroud)
但结果日志始终显示为0.
这是一个更优雅的解决方案
public void onCreate(Bundle savedInstanceState) {
webView = (WebView) findViewById(R.id.webView1);
webView.addOnLayoutChangeListener(new OnLayoutChangeListener() {
@Override
public void onLayoutChange(View v, int left, int top, int right,int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
int w= webView.getWidth();
int h= webView.getHeight();
}
});
}
Run Code Online (Sandbox Code Playgroud)
嗯 - 我查看了 WevView 源代码,我可以看到他们在内部使用 View#getWidth 和 View#getHeight 这是 的WebView私有方法之一:
/*
* Return the width of the view where the content of WebView should render
* to.
*/
private int getViewWidth() {
if (!isVerticalScrollBarEnabled() || mOverlayVerticalScrollbar) {
return getWidth();
} else {
return getWidth() - getVerticalScrollbarWidth();
}
}
Run Code Online (Sandbox Code Playgroud)
正如评论中所述,您必须确保在分配活动布局后进行测量,例如setContentView(R.layout.mylayout);
| 归档时间: |
|
| 查看次数: |
20317 次 |
| 最近记录: |