2015-05-01 240 views
0

我想在運行時將TextView添加到GridLayout。由於沒有屬性可以設置GridLayout的單元格背景,所以我將TextView Background設置爲單元格背景,在其邊框處有筆觸。我的問題是,在運行時將TextView添加到Gridlayout時,TextView大小不等於GridLayout單元格。拉伸TextView寬度和高度等於GridLayout的單元格寬度高度

在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大小拉伸到與單元大小相等。

enter image description here

+0

退房:http://stackoverflow.com/questions/20871690/dont-understand-how-to-use-gridlayout-spec –

+0

@ Haresh Chhelana。 ..謝謝你的回覆,但這不是我要求 – mark

回答

0

試試這個

TextView textView = (TextView)findViewById(R.id.text_view); 
ViewGroup.LayoutParams params = textView.getLayoutParams(); 
params.width = ViewGroup.LayoutParams.FILL_PARENT; 
textView.setLayoutParams(params); 
+0

我已經試過這個: GridLayout.LayoutParams lp = new GridLayout.LayoutParams(); \t \t \t lp.width = LayoutParams.FILL_PARENT; \t \t \t lp.height = LayoutParams.FILL_PARENT; \t \t \t lp.setGravity(Gravity.FILL); tv.setLayoutParams(lp); 但沒有運氣:「( – mark

+0

顯示屏幕截圖你現在 –

+0

得到什麼@穆爾塔扎胡爾希德·侯賽因我已經更新了我的問題,我的問題的補充截圖 – mark