ImageView e TextView float (esquerda / direita) Android

votos
17

Estou à procura de uma maneira de posicionar meu texto ao redor da minha ImageView (assim como o flutuador css esquerda / direita).

Como posso fazer isso no Android? Eu tenho usado android:layout_alignParentLeft=true(para posicionar minha ImageView esquerda) e android:layout_alignParentRight=truepara o meu textview mas o textview vem ao lado do imageView e não continua sob o ImageView quando tenho um longo texto ..

Alguma ideia?

Publicado 21/12/2009 em 12:47
fonte usuário
Em outras línguas...                            


5 respostas

votos
5

Eu tive o mesmo problema ao tentar obter um ImageView alinhado à esquerda de um RelativeLayout. Usei android: ScaleType = "fitStart" para obtê-lo fixo.

Meu XML-file:

 <RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="horizontal"
      android:layout_height="fill_parent"
      android:layout_width="fill_parent"
      android:padding="10dp">
     <ImageView
         android:layout_height="50dp"
         android:id="@+id/country_icon"
         android:layout_alignParentLeft="true"
         android:layout_width="wrap_content"
         android:scaleType="fitStart" />          
</RelativeLayout>
Respondeu 19/09/2011 em 16:16
fonte usuário

votos
1

Não há nenhuma maneira fácil de conseguir este feito. Você pode usar 2 visualizações de texto, um ao lado do ImageView e um abaixo do ImageView. E se você tiver sorte na obtenção de uma imagem de tamanho constante em torno do qual você precisa para quebrar o texto (eu era), calcular o número de caracteres que se encaixam no textview ao lado da imagem e quebrar sua seqüência em duas partes. Apenas certifique-se que você não dividir o texto no meio de uma palavra.

Eu também tinha tentado usando html, mas para isso eu tive que usar um webview, foi pesado e sujo. Preferia a versão de texto de divisão.

Respondeu 15/03/2012 em 12:33
fonte usuário

votos
1

Eu também tentei muitas maneiras, mas sem sorte. Eu não acho Texto fluiria na atual Android como faz em html.

Respondeu 21/12/2009 em 22:48
fonte usuário

votos
0

Você tem duas opções:

  1. Com LinearLayout, definindo a orientação para horizontal para que a imagem é primeiro e depois vem o resto.
  2. Com RelativeLayout, não é possível indicar a posição de um elemento em relação a outro com os atributos do android estilo: layout_toLeftOft, android: layout_toRightOf, android: layout_below ou android: layout_alignParentTop, ...

No entanto, não é tão flexível como CSS para algumas ações e, por exemplo, moldar texto à volta de uma imagem não é tão fácil de conseguir.

Respondeu 03/07/2014 em 08:14
fonte usuário

votos
0

Você precisa usar RelativeLayout como o recipiente

Respondeu 21/12/2009 em 16:13
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more