Decidí RelativeLayout
en un archivo de diseño xml. Ahora quiero agregar Views
desde el código al Diseño existente. Agregué un Button
dinámicamente a este diseño existente como se muestra a continuación a través del código:
rLayout = (RelativeLayout)findViewById(R.id.rlayout); LayoutParams lprams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); Button tv1 = new Button(this); tv1.setText("Hello"); tv1.setLayoutParams(lprams); tv1.setId(1); rLayout.addView(tv1);
Ahora necesito agregar otro Button
a la derecha del Button
ya agregado. No puedo encontrar la manera en que puedo agregar la nueva a la derecha del botón agregado anteriormente.
Agregue la regla RelativeLayout.RIGHT_OF
para el segundo Button
LayoutParams
agregado:
// first Button RelativeLayout rLayout = (RelativeLayout) findViewById(R.id.rlayout); RelativeLayout.LayoutParams lprams = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); Button tv1 = new Button(this); tv1.setText("Hello"); tv1.setLayoutParams(lprams); tv1.setId(1); rLayout.addView(tv1); // second Button RelativeLayout.LayoutParams newParams = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); Button tv2 = new Button(this); tv1.setText("Hello2"); newParams.addRule(RelativeLayout.RIGHT_OF, 1); tv2.setLayoutParams(newParams); tv2.setId(2); rLayout.addView(tv2);
puede ser que esto pueda ayudarte, pruébalo.
rLayout = (RelativeLayout)findViewById(R.id.rlayout); LayoutParams lprams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); TableLayout tl=new TableLayout(this); rLayout.addView(tl); TableRow tr1=new TableRow(this); tl.addView(tr1); Button btn1 = new Button(this); btn1.setText("Hello"); btn1.setLayoutParams(lprams); btn1.setId(1); tr1.addView(btn1); TextView tv1 = new TextView(this); tv1.setWidth(40); tv1.setHeight(LayoutParams.WRAP_CONTENT); tr1.addView(tv1); Button btn2 = new Button(this); btn2.setText("World"); btn2.setLayoutParams(lprams); btn2.setId(2); tr1.addView(btn2);
Crea otro botón:
Button tv2 = new Button(this); tv2.setText("World"); tv2.setLayoutParams(lprams); tv2.setId(2);
Agregue agregarlo a su RelativeLayout:
rLayout.addView(tv2);