youtubers tesis sobre sirve resumida que para investigaciones investigacion historia caracteristicas android view position center relative

android - sirve - tesis sobre youtube pdf



¿Hay una manera de compensar una vista desde el centro en Android? (3)

No uses margen, usa relleno (arriba), así:

<View android:id="@+id/fakeView" android:layout_width="10dp" android:layout_height="10dp" android:layout_centerInParent="true" android:paddingTop="80dp" android:background="#FFAABB" />

Eso debería funcionar, aunque no lo he probado!

Estoy intentando posicionar mi botón no exactamente en el centro, pero digamos que en los 2 / 5s de la altura de la pantalla, estaba buscando el atributo sin éxito, así que probé este enfoque

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background" android:padding="20dp" > <ImageButton android:id="@+id/flashlight_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_above="@+id/fakeView" android:background="@null" android:contentDescription="@string/flashlight_button_description" android:src="@drawable/freeml_bright" /> <View android:id="@+id/fakeView" android:layout_width="10dp" android:layout_height="10dp" android:layout_centerInParent="true" android:background="#FFAABB" /> </RelativeLayout>

Sin embargo, no funciona, incluso si configuro el margen en la vista falsa.

¿Algunas ideas?

//EDITAR//

gracias por sus respuestas, el atributo de relleno funciona, sin embargo, como es una imagen grande y si quiero que empiece a 2/5 de la altura de la pantalla, cubre el punto central de la pantalla, así que si uso el atributo de relleno funciona pero Lo empuja lejos del centro y no permite que lo cubra. Disculpa, me equivoque

Sin embargo, hice que funcionara utilizando un diseño lineal, lo que quería evitar porque hay más vistas en la parte superior e inferior una junto a la otra, por lo que llevaría a vistas anidadas utilizando el diseño lineal. Lamentablemente creo que es la única opción.

Básicamente, utiliza otro diseño lineal que llena el espacio restante que no se utiliza en las vistas superior e inferior con altura = 0dp y peso = 1 y establece su gravedad en el centro

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="20dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:gravity="center" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/application_logo_description" android:src="@drawable/mylight" /> <ImageButton android:id="@+id/settings_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:background="@null" android:contentDescription="@string/settings_button_description" android:src="@drawable/settings_button" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageButton android:id="@+id/flashlight_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@null" android:contentDescription="@string/flashlight_button_description" android:src="@drawable/flashlight_button_selector" /> <View android:id="@+id/fakeView" android:layout_width="0dp" android:layout_height="0dp" android:layout_marginTop="60dp" android:background="#FFAABB" /> </LinearLayout> <ImageView android:id="@+id/imageView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|center_horizontal" android:contentDescription="@string/powered_by_description" android:src="@drawable/powered_by" /> <ImageButton android:id="@+id/ad_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|center_horizontal" android:background="@null" android:contentDescription="@string/ad_button_description" android:src="@drawable/freeml" /> </LinearLayout>

Gracias por tu contribución.


Según el tamaño de la pantalla del dispositivo de destino, el relleno de X dp puede moverlo más de una quinta parte de la altura.

Es posible que tenga que codificar este movimiento usted mismo.

Pero, de nuevo, nada te impide hacer.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background" android:padding="20dp" > <View android:id="@+id/fakeView" android:layout_width="10dp" android:layout_height="10dp" android:layout_centerInParent="true" android:background="#FFAABB" /> <ImageButton android:id="@+id/flashlight_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_above="@+id/fakeView" android:marginBottom="50dp" android:background="@null" android:contentDescription="@string/flashlight_button_description" android:src="@drawable/freeml_bright" />


intente usar el atributo android: layout_toLeftOf = "@ + id / fakeView"