android - sistema - Agregar dinĂ¡micamente TableRow a TableLayout
android sistema operativo (1)
Resulta que Eclipse no siempre tiene la razón. Ctrl + Shift + M hizo la importación incorrecta. Tenía import android.view.ViewGroup.LayoutParams
cuando debería tener import android.widget.TableRow.LayoutParams
Todo funciona bien ahora.
Cuando se hace clic en un botón, se ejecuta el siguiente método:
public void createTableRow(View v) {
TableLayout tl = (TableLayout) findViewById(R.id.spreadsheet);
TableRow tr = new TableRow(this);
LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
tr.setLayoutParams(lp);
TextView tvLeft = new TextView(this);
tvLeft.setLayoutParams(lp);
tvLeft.setBackgroundColor(Color.WHITE);
tvLeft.setText("OMG");
TextView tvCenter = new TextView(this);
tvCenter.setLayoutParams(lp);
tvCenter.setBackgroundColor(Color.WHITE);
tvCenter.setText("It");
TextView tvRight = new TextView(this);
tvRight.setLayoutParams(lp);
tvRight.setBackgroundColor(Color.WHITE);
tvRight.setText("WORKED!!!");
tr.addView(tvLeft);
tr.addView(tvCenter);
tr.addView(tvRight);
tl.addView(tr, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
}
R.id.spreadsheet
es un TableLayout xml. Puedo ver en la depuración que se está accediendo al método, pero no se dibuja nada en la pantalla. ¿Lo que da? ¿Necesito restablecer la vista de contenido de alguna manera?