如何在onCreate期间确定活动的尺寸(宽度和高度)。尺寸不能是整个屏幕的尺寸,而只能是活动使用的区域尺寸。我尝试在SO上发布的一些方法最终都会给出设备的最大屏幕尺寸。
答案 0 :(得分:0)
你有没有尝试过(不完全是onCreate):
activityRootView = findViewById(R.id.yourRootView);
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
//activityRootView.getHeight();
//...
}
}
});
当然,您的活动主要布局必须与父级或填充内容相匹配
答案 1 :(得分:0)
整个用户内容转到android.R.id.content
,所以您可以做的是
final Rect rectgle = new Rect();
LinearLayout mContent = (LinearLayout)findViewById(android.R.id.content).getParent();
mContent.getWindowVisibleDisplayFrame(rectgle);
// and use
//rectgle.top;
//rectgle.left
//rectgle.right
这包括操作栏如果要排除操作栏也直接使用
//findViewById(android.R.id.content);
返回FrameLayout