0
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    LinearLayout ll=(LinearLayout)findViewById(R.id.linearlayout);



   for(int k=0;k<10;k++)    
   {    TableRow tr=new TableRow(this);
       tr.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT)); 
        tr.setId(k);

    for(int s=0;s<10;s++)
         {
         EditText edt=new EditText(this);
         Log.i("SS","setting layout params for textview "+s+k);
         edt.setText("abc "+s+k+"  ");


        edt.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
        ViewGroup.LayoutParams p=edt.getLayoutParams();

         Log.i("SS","edt params "+p.height +" "+p.width);
        tr.addView(edt);
         }
   ll.addView(tr);
   }



}

}

上記のコードで、行 edt.setLayoutParams を削除すると、編集テキストが表示されます。しかし、私が彼らのパラメータを設定すると、彼らは表示されません。何が原因でしょうか?

4

1 に答える 1

0

これを試してみてください...

TableRow tr = new TableRow(this);  
TableLayout.LayoutParams tableRowParams=
  new TableLayout.LayoutParams
  (TableLayout.LayoutParams.FILL_PARENT,TableLayout.LayoutParams.WRAP_CONTENT);


tableRowParams.setMargins(10, 10, 10, 10);

tr.setLayoutParams(tableRowParams);

これがあなたを助けることを願っています...

于 2011-10-10T04:33:03.380 に答える