有没有办法以编程方式更改android小部件的嵌套布局参数?

时间:2015-06-07 08:35:13

标签: android android-widget android-appwidget layoutparams

我想知道是否有办法以编程方式更改android小部件width中嵌套height的{​​{1}}和Layout,就像{{1在正常活动中?

我计划使用xml创建自定义进度条,因此我需要更改一个布局的LayoutParams以显示更改

2 个答案:

答案 0 :(得分:0)

您必须使用的LayoutParams的类型由封装您想要更改参数的事物的布局类型指定。

因此,例如,如果要更改LayoutParams的{​​{1}},则需要检查封装它的布局类型。在您的情况下,LinearLayout正在封装LinearLayout,因此您需要使用RelativeLayout代替RelativeLayout.LayoutParams

xml文件(activity_main.xml)中ViewGroup.LayoutParams内的

LinearLayout。使用RelativeLayout解决此问题。

改变这个:

RelativeLayout.LayoutParams

为:

ll.setLayoutParams(new ViewGroup.LayoutParams(100,200));

答案 1 :(得分:-1)

您必须使用这种方式来查找嵌套布局并更改布局参数。

Button button = (Button) findViewById(view.getId());
LinearLayout rLGreen = ((LinearLayout) button.getParent());
rLGreen.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

它可能对你有所帮助!!