Android layout_width vista – ¿cómo cambiar de forma programática?
Esta es mi opinión, y deseo cambiar layout_width a "10dip". ¿Cómo lo hago mediante programación? Tenga en cuenta que este no es un diseño lineal, es una vista.
<View android:id="@+id/nutrition_bar_filled" android:background="@drawable/green_rectangle" android:layout_height="30dip" android:layout_width="50dip"> </View>
Conozco LayoutParams. ¿Cómo se utiliza para establecer el ancho a 10dip?
Creo que su pregunta es cambiar sólo el ancho de vista de forma dinámica, mientras que los métodos anteriores cambiarán las propiedades de diseño completamente a uno nuevo, por lo que sugiero que getLayoutParams de vista primero, a continuación, establecer el ancho en layoutParmas y finalmente establecer layoutparams a la vista, Debajo de los pasos para hacer lo mismo.
View view_instance = (View)findViewById(R.id.nutrition_bar_filled); LayoutParams params=view_instance.getLayoutParams(); params.width=newOne; view_instance.setLayoutParams(params);
Intenta usar
View view_instance = (View)findViewById(R.id.nutrition_bar_filled); view_instance.setWidth(10);
Use Layoutparams para hacerlo, donde puede establecer el ancho y la altura como a continuación.
LayoutParams lp = new LayoutParams(10,LayoutParams.wrap_content); View_instance.setLayoutParams(lp);
Puede configurar altura y ancho como esto también:
viewinstance.setLayoutParams(new LayoutParams(width, height));
O simplemente:
view.getLayoutParams().width = 400; view.requestLayout();