我有一个Android对话框,我想将其放在窗口的特定位置。
我正在使用API 8int a == -2
和int b == 153
为什么不是正数?
之间有什么区别
getLayoutParams().height;
mToolTipLayout.getHeight();
我有以下代码
public void initViews(int orientation) {
mToolTipLayout = ((LinearLayout) findViewById(R.id.tooltip_layout));
ViewTreeObserver vto = mToolTipLayout.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
mToolTipLayout.getViewTreeObserver().removeGlobalOnLayoutListener(this);
setPosition();
}
});
private void setPosition() {
int a = mToolTipLayout.getLayoutParams().height;
int b = mToolTipLayout.getHeight();
}
最佳答案
布局参数指定度量和布局过程应如何工作。在度量/布局过程中不会更新它们。 -2
是WRAP_CONTENT
的值。
度量本身在视图本身中可用,而不在布局参数中可用。 153
是您所测量的像素高度,以WRAP_CONTENT
规格测量。