我在相对布局中有一个线性布局,xml文件中线性布局的默认宽度和高度是250和150,看起来不错。但是当我在运行时调整它的大小并再次将宽度和高度设置为 250 和 150 时,它看起来不像以前那样正确,而且视觉上宽度和高度似乎比以前更小。我使用此代码在运行时调整大小:
LinearLayout ll = (LinearLayout)findViewById(R.id.myLayout);
ll.getLayoutParams().height=150;
ll.getLayoutParams().width=250;
ll.requestLayout();
ll.invalidate();
我认为我们在运行时设置的值是以像素为单位而不是以倾角为单位,但我不确定。如果是这样,我如何在运行时更改宽度和高度的单位?
最佳答案
尝试用 DP 代替,下面是转换为 DP 的一种方法:
int valueInDP= (int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_DIP, YOURVALUE, getResources().getDisplayMetrics());
将 YOURVALUE 替换为以 PX 为单位的值,例如 250
关于java - 在运行时调整 android 线性布局的大小无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18538320/