我正在尝试在运行时将TextView添加到GridLayout。由于没有设置GridLayout的单元格背景的属性,所以我设置TextView背景看起来像单元格背景在其边框处有笔划。我的问题是,在运行时将TextView添加到Gridlayout时,TextView大小不是Stretching等于GridLayout Cell。
在我设置的xml文件中:
<GridLayout
android:id="@+id/gridLay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alignmentMode="alignBounds"
android:columnCount="5"
android:columnOrderPreserved="false"
android:useDefaultMargins="false" >
<TextView
android:layout_gravity="fill"
android:background="@drawable/grid_lay_cell_bg"
android:padding="5dp"
android:text="Name"
android:textSize="14dp" />
</GridLayout>
它工作得很好,TextView涵盖了完整的单元格大小,但是当我尝试在下面的代码中添加它时运行时间:
TextView tv3 = new TextView(getActivity());
GridLayout.LayoutParams lp3 = new GridLayout.LayoutParams(GridLayout.spec(2, 1), GridLayout.spec(0, 1));
lp3.setGravity(Gravity.FILL);
tv3.setLayoutParams(lp3);
tv3.setGravity(Gravity.FILL);
tv3.setPadding(padd, padd, padd, padd);
tv3.setBackgroundResource(R.drawable.grid_lay_cell_bg);
tv3.setTextSize(16);
tv3.setText("Test");
gridLay.addView(tv3, lp3);
TextView未覆盖完整的单元格大小。
请给我一些提示,在Android中运行时将TextView添加到GridLayout时,如何将TextView大小拉伸为单元格大小。
答案 0 :(得分:0)
试试这个
TextView textView = (TextView)findViewById(R.id.text_view);
ViewGroup.LayoutParams params = textView.getLayoutParams();
params.width = ViewGroup.LayoutParams.FILL_PARENT;
textView.setLayoutParams(params);