Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 运行时如何更改LinearLayout的大小?_Android - Fatal编程技术网

Android 运行时如何更改LinearLayout的大小?

Android 运行时如何更改LinearLayout的大小?,android,Android,运行时如何更改LinearLayout的大小 我已经在运行时动态设置了大小。但是没有运气。未更改LinearLayout的大小 如何编码 提前感谢。大小由连接LinearLayout与其父项的布局参数决定。我就是这样做的: // get element I want to resize LinearLayout myBar = (LinearLayout) findViewById(R.id.infopanel_graph); // get layout parameters for tha

运行时如何更改LinearLayout的大小

我已经在运行时动态设置了大小。但是没有运气。未更改LinearLayout的大小

如何编码


提前感谢。

大小由连接
LinearLayout
与其父项的
布局参数决定。

我就是这样做的:

// get element I want to resize
LinearLayout myBar = (LinearLayout) findViewById(R.id.infopanel_graph); 

// get layout parameters for that element
ViewGroup.LayoutParams params = myBar.getLayoutParams();

// change width of the params e.g. 50dp
params.width = 50;

// initialize new parameters for my element
myBar.setLayoutParams(new LinearLayout.LayoutParams(params));

在调用public void onCreate(Bundle savedInstanceState)时,我使用以下代码设置LinearLayout的大小;LinearLayout.LayoutParams布局=新的LinearLayout.LayoutParams(w,h);布局高度=h;布局宽度=w;linearLayout.setLayoutParams(布局);线性布局。设置码数活动(本);上面的代码在第一时间运行良好。然后当它运行时,再次调用上面的代码。不走运。它和旧的一样大。您能推荐任何编码来更正上述代码吗?谢谢。当我运行上述代码时。它在最后一行撞坏了。我们不需要调用setLayoutParams。当您说params.width=50时,那么多的宽度将被指定给LinearLayout。