studio layout_below español ejemplo constraint bottom android view android-relativelayout

layout_below - relativelayout android



Vistas superpuestas en Android (6)

Además, eche un vistazo a FrameLayout , así es como la aplicación Camera''s Camera implementa la superposición de botones de Zoom.

¿Es posible tener vistas superpuestas en Android? Me gustaría tener un ImageView con un png transparente en el frente y otra vista en el fondo.

editar:

Esto es lo que tengo en este momento, el problema es que la imagen en el imageView no es transparente, las partes que deberían ser transparentes son solo negras.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/gallerylayout" > <Gallery android:id="@+id/overview" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <ImageView android:id="@+id/navigmaske" android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/navigmask" /> </RelativeLayout>

editar:

Lo hice funcionar, era un archivo de tema de otro programador en el equipo. Solo cambié esto

<item name="android:background">#FF000000</item>

a esto

<item name="android:background">#00000000</item>


Android maneja la transparencia entre las vistas y los elementos dibujables (incluidas las imágenes PNG) de forma nativa, por lo que el escenario que describes (un ImageView parcialmente transparente frente a una Gallery ) es ciertamente posible.

Si tiene problemas, puede estar relacionado con el diseño o su imagen. He replicado el diseño que describes y logré el efecto que buscabas. Aquí está el diseño exacto que utilicé.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/gallerylayout" android:layout_width="fill_parent" android:layout_height="fill_parent"> <Gallery android:id="@+id/overview" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <ImageView android:id="@+id/navigmaske" android:background="#0000" android:src="@drawable/navigmask" android:scaleType="fitXY" android:layout_alignTop="@id/overview" android:layout_alignBottom="@id/overview" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </RelativeLayout>

Tenga en cuenta que he cambiado el pariente RelativeLayout a un alto y ancho de fill_parent ya que generalmente es lo que quiere para una actividad principal. Luego, alineé la parte superior e inferior de ImageView con la parte superior e inferior de la Gallery para asegurar que esté centrada al frente.

También establecí explícitamente que el fondo de ImageView sea ​​transparente.

En cuanto a la imagen dibujable en sí, si pones el archivo PNG en algún lugar para que lo mire, puedo usarlo en mi proyecto y ver si es responsable.


La galería visible cambia la visibilidad, que es la forma de obtener la galería sobre la superposición de otra vista. la aplicación de muestra Home tiene algunos buenos ejemplos de esta técnica.


La manera más simple es poner un margen de -40dp en el extremo de la imagen superior


Sí, eso es posible. El desafío, sin embargo, es hacer su diseño correctamente. La forma más fácil de hacerlo sería tener un AbsoluteLayout y luego colocar las dos imágenes donde desee que estén. No es necesario hacer nada especial para el png transparente, salvo que se lo agregue más tarde al diseño.