Tengo un RelativeLayout, como a continuación:RelativeLayout Agregar regla "RelativeLayout.LEFT_OF" no trabajar
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:id="@+id/parent" >
<ListView
android:layout_width="360dp"
android:layout_height="600dp"
android:id="@+id/list"
android:inputType="text"
android:maxLines="1"
android:layout_margin="50dp"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
En el código de Java, quiero añadir una vista a la izquierda de la vista de lista, pero no lo hicieron trabajado:
m_relativeLayout = (RelativeLayout)findViewById(R.id.parent);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
layoutParams.addRule(RelativeLayout.LEFT_OF, m_listView.getId());
Button button2 = new Button(this);
button2.setText("I am button 2");
m_relativeLayout.addView(button2, layoutParams);
solamente si fijo la vista de lista para alignParentRight, va a trabajar. ¿Es esto un error de Android o me falta algo?
Siempre trato de addView(View child, int index, LayoutParams params)
, pero podría funcionar solo en la distribución lineal. Entonces, ¿hay una solución normal para que el RelativeLayout.LEFT_OF
funcione?
EDITAR
me han tratado RelativeLayout.BELOW
y RelativeLayout.RIGHT_OF
, y funcionó a la perfección, por lo que significa que no tengo suficiente lugar para obtener el botón? Traté de dar más espacio, pero todavía no funciona.
Uso Toshiba AT100 (1280 * 800) y paisaje, por lo que el espacio es suficiente. Pruebe below
y right
igual que el left
. Creo que si pongo un control A en la salida relativa, entonces agrego el control B y deduzco que está a la izquierda del control A, el resultado debería ser que el control B empujará el control A hacia la derecha, ¿no?
¿Dónde aparece la vista? – Barak
La relativelayout es la vista principal de la actividad y tiene espacio para agregar el botón. – dreamtale
En realidad, quiero decir, ¿el botón simplemente no aparece o aparece en un lugar inapropiado? – Barak