我想动态创建textview并设置属性。
LinearLayout timeBar = (LinearLayout)findViewById(R.id.linear_layout_cells);
TextView tv = new TextView(this);
timeBar.addView(tv);
我需要能够将高度设置为匹配父级,宽度设置为零,重量将是100的百分之一,我还需要设置背景颜色。这甚至可能吗?
任何帮助非常感谢
答案 0 :(得分:2)
是的,只需制作LinearLayout.LayoutParams的实例即可。它有宽度,高度和重量的构造函数。然后,拨打tv.setLayoutParams()
。
在这种情况下,您使用LinearLayout.LayoutParams
,因为TextView
位于LinearLayout
内。这是一个更正式的例子:
LinearLayout timeBar = (LinearLayout)findViewById(R.id.linear_layout_cells);
TextView tv = new TextView(this);
float weight = 0.5f; //your value goes here.
tv.setLayoutParams(new LinearLayout.LayoutParams(0, ViewGroup.LayoutParams.MATCH_PARENT, weight));
timeBar.addView(tv);