Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 28/10/14, 10:39:00
Array

[xs_avatar]
MortadeloComic MortadeloComic no está en línea
Usuario novato en la web
 
Fecha de registro: sep 2014
Mensajes: 15
Modelo de smartphone: Galaxy S5
Tu operador: Movistar
Distribución de elementos en layout

¿Como se hace para distribuir verticalmente elementos y que queden equidistantes.?
Por ejemplo, si tengo 3 imagenes (ImageView), querría que haya la misma distancia entre ellos y con los bordes superior e inferior de la pantalla.
Responder Con Cita


  #2  
Viejo 28/10/14, 10:50:42
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Pues primero pones la orientacion del layour en vertical y luego a cada objeto le puedes añadir un margin top o bottom de la separacion que quieras en cada uno
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 28/10/14, 12:20:50
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Usando "layout_weight" y como contenedor padre un LinearLayout con "orientation" vertical, también cada elemento en el LinearLayout debe tener un "height" de 0.
Responder Con Cita
Gracias de parte de:
  #4  
Viejo 29/10/14, 02:39:37
Array

[xs_avatar]
JamesRevelo JamesRevelo no está en línea
Usuario poco activo
 
Fecha de registro: oct 2014
Mensajes: 29
Tu operador: Movistar

Usa un Relative Layout y haz que los elementos no centrales dependan de los bordes del view del centro
Responder Con Cita
Gracias de parte de:
  #5  
Viejo 29/10/14, 12:20:39
Array

[xs_avatar]
androizado androizado no está en línea
Miembro del foro
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Tu operador: Vodafone
Yo utilizaría lo siguiente, que es como mejor me manejo. Pero a lo mejor hay mejores opciones.

Código:
<?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">

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:weightSum="3">

            <ImageView
                android:id="@+id/image1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:padding="10dp"
                android:src="@drawable/ic_launcher" />

            <ImageView
                android:id="@+id/image2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:padding="10dp"
                android:src="@drawable/ic_launcher" />
            
            <ImageView
                android:id="@+id/image3"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1"   
                android:padding="10dp"
                android:src="@drawable/ic_launcher" />

    </LinearLayout>

</LinearLayout>
Espero que te sirva
Responder Con Cita
Gracias de parte de:
  #6  
Viejo 29/10/14, 18:21:33
Array

[xs_avatar]
MortadeloComic MortadeloComic no está en línea
Usuario novato en la web
 
Fecha de registro: sep 2014
Mensajes: 15
Modelo de smartphone: Galaxy S5
Tu operador: Movistar
Estoy siguiendo el ejemplo de @androizado, y parece ir bien, el problema es que me estira las imágenes horizontalmente, se nota sobre todo al poner la tableta en posición horizontal, entonces ¿como alterar el alto de la imagen (el valor height) para mantener la relación de aspecto de alto y ancho?

Al final ,e va mejor con el método de @Jamesravelo.

Última edición por MortadeloComic Día 29/10/14 a las 18:51:17.
Responder Con Cita
  #7  
Viejo 30/10/14, 10:17:10
Array

[xs_avatar]
gonza28 gonza28 no está en línea
Desarrollador
 
Fecha de registro: feb 2012
Localización: INTERESA?
Mensajes: 4,191
Modelo de smartphone: Samsung Galaxy Note 4
Tu operador: Personal
No es gran cosa lo que voy a aportar pero puede servir ya que justo estoy peleando con un scroll. L cuestion es que con u RelativeLayout preparé esto. a demas tiene un scroll y dentro de el un LinearL. pero en el Relative puedes alinear como quieras.

[PHP]<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp" >

<ImageView
android:id="@+id/img_empanadas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="7dp"
android:src="@drawable/ic_fibers_sb" />

<ImageView
android:id="@+id/imag_launch_empanadas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
android:src="@drawable/ic_chevron_right_white_48dp" />

<View
android:id="@+id/view7"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="#2e343d" />

<TextView
android:id="@+id/text_title_empanadas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="Titulo largo"
android:textColor="#fb6b0c"
android:textSize="15dp" />

<TextView
android:id="@+id/text_sub_empanadas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="Subtitulo"
android:textColor="#ffffff"
android:textSize="12dp" />

</RelativeLayout>[/PHP]

Resultado

Responder Con Cita
  #8  
Viejo 30/10/14, 12:09:25
Array

[xs_avatar]
MortadeloComic MortadeloComic no está en línea
Usuario novato en la web
 
Fecha de registro: sep 2014
Mensajes: 15
Modelo de smartphone: Galaxy S5
Tu operador: Movistar
A ver, he puesto el siguiente código:

[php]
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="150dp"
android:gravity="center"
android:background="#449def"
>
<ImageView
android:id="@+id/Imagen2"
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/ic_launcher"
/>
<ImageView
android:id="@+id/Imagen1"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_marginLeft="1dp"
android:src="@drawable/ic_launcher"
android:layout_toLeftOf="@id/Imagen2"
/>

<ImageView
android:id="@+id/Imagen3"
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/ic_launcher"
android:layout_toRightOf="@id/Imagen2"
/>
</RelativeLayout>[/php]

Y me sale como en la imagen adjunta, la primera imagen corresponde a un Nexus 4, y la segunda a un Nexus 10, ambas son la vista previa del emulador del Adroid Studio.

Me gustaría que en la nexus 10 me salieran más separaditas las imágenes, puedo añadir las lineas al Imagen2:
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
pero entonces en el Nexus 4 salen las imágenes cortadas, se salen fuera de la pantalla.
No se... solo se me ocurre arreglarlo mediante código, calcular el ancho de la pantalla y el tamaño de las imagenes y en función del espacio libre asignar más o menos espacio. ¿como lo veis?
Otra cosa curiosa, si al Imagen1 le elimino la linea android:layout_marginLeft="1dp" me desaparece una de las 3 imágenes, vamos que en lugar de ver 3 androids veo 2... ¿porque pasa esto?.
Imágenes Adjuntas
Tipo de Archivo: jpg pantallas.jpg (64.1 KB, 13 visitas)
Responder Con Cita
  #9  
Viejo 30/10/14, 12:30:00
Array

[xs_avatar]
gonza28 gonza28 no está en línea
Desarrollador
 
Fecha de registro: feb 2012
Localización: INTERESA?
Mensajes: 4,191
Modelo de smartphone: Samsung Galaxy Note 4
Tu operador: Personal
Para las tablets, creas otra layout apropiadas para ellas y alli pegas tus codigos nuevamente y los ubicas como quieres. No se verá bien nuca en una tablet real (aviso).
Nuevamente debes crear las layout para las distintas tablet, aun que acomodes como acomodes, en el emulador es una cosa, en la tablet es otra. (crea las layout)
Responder Con Cita
Gracias de parte de:
  #10  
Viejo 30/10/14, 13:13:34
Array

[xs_avatar]
MortadeloComic MortadeloComic no está en línea
Usuario novato en la web
 
Fecha de registro: sep 2014
Mensajes: 15
Modelo de smartphone: Galaxy S5
Tu operador: Movistar
Pues si, parece buena tecnica lo de hacer un layout para la tableta y otra para los moviles. Sigo provando.
Responder Con Cita
  #11  
Viejo 01/11/14, 12:06:34
Array

[xs_avatar]
MortadeloComic MortadeloComic no está en línea
Usuario novato en la web
 
Fecha de registro: sep 2014
Mensajes: 15
Modelo de smartphone: Galaxy S5
Tu operador: Movistar
Bueno, estoy poniendo unas imagenes centradas como se ve en las fotos que puse en el mensaje #8 de este hilo. lo he conseguido haciendo lo que ha dicho @gonza28, lo de poner layout diferentes para tabletas y para moviles, ahora quería elimiar el título de la aplicación, ¿como lo eliminais vosotros?.
Lo he intentado poniendo android:theme="@android:style/Theme.NoTitleBar.Fullscreen" en el android manifest, y viendo las previas del android studio, funciona para la nexus 10, pero no para el nexus 4, y no entiendo porque, (moviles y tabletas reales no tengo por aquí para provar en este momento.). También lo he intentado mediante programación con requestWindowFeature(Window.FEATURE_NO_TITLE); y lo mismo, en las previas se ve sin título para la nexus 10 y con título para la nexus 4... ¿será fallo del android studio?
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 19:13:08 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /