这是我的场景。
我有一个按照分辨率 320*480 制作的图像(假设我使用的是 mdpi 移动设备)。我将此图像作为背景添加到相对布局中。
现在我的屏幕有三个主要的东西。
1- Title bar (The standard title bar of android)
2- My relative layout and its sub view image relative layout which is matched parent.
3- My menu bar at the bottom.
现在因为我的图像在菜单栏和标题栏之间被拉伸了。我想让它适合屏幕。下面是我正在使用的代码。
mainLayout.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
public void onGlobalLayout()
{
if (notCreated == true)
{
notCreated = false;
}
else
{
mnHeight = mainLayout.getHeight();
Rect rect = getRawCoordinatesRect(mainLayout);
h = getWindowManager().getDefaultDisplay().getHeight() -
- rect.top - mainLayout.getHeight();
// rect.top to remove android standard title bar
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(image.getWidth(),LayoutParams.MATCH_PARENT);
params.topMargin = -1 * rect.top;
params.bottomMargin = -1 * h;
image.setLayoutParams(params);
}
}
});
现在这行不通。一点帮助将不胜感激。
注意:实际上我只是想将我的图像相对布局拉伸到 320*480。现在它夹在标题栏和我的菜单栏之间。例如,现在它的尺寸是 320*400