¿Hay alguna forma de envolver un TextView alrededor de una imagen? Es lo típico que la gente hace en CSS como esto http://www.echoecho.com/htmlimages08.htmAndroid: la interfaz de usuario para el texto ajusta una imagen
Gracias,
Tee
¿Hay alguna forma de envolver un TextView alrededor de una imagen? Es lo típico que la gente hace en CSS como esto http://www.echoecho.com/htmlimages08.htmAndroid: la interfaz de usuario para el texto ajusta una imagen
Gracias,
Tee
Por qué no utilizar un WebView
? Tendrás más libertad en el futuro para personalizar el diseño de esa manera.
Si un WebView
es demasiado pesado para su caso de uso, probablemente necesite renderizar el texto y la imagen manualmente. Puede encontrar información relevante en this android-developers thread.
Otra forma de lograr esto es hacer una imagen que contenga el texto y las imágenes que desea mostrar. Obviamente, peso más pesado y una solución alternativa.
Puede hacerlo usando webview y una solución para cargar contenido local. A partir de la 1.0 SDK de la vista web no puede cargar contenido local sin los arounds de trabajo descritos en estos artículos:
y
http://blog.tourizo.com/2009/02/how-to-display-local-file-in-android.html
enlace de Roman es un hilo que le diga que puede' t hacerlo con la vista de texto, por lo que no es una opción en este punto.
He escrito un widget para esto: http://code.google.com/p/android-flowtextview/
Un widget se extiende (y por lo tanto se comporta como) un RelativeLayout lo que puede añadir puntos de vista del niño. La clase expone un método setText() que le permite establecer el texto de la vista (simple o spannable) y luego llama a invalidate() para representar el texto. El texto completará cualquier espacio dejado por las vistas secundarias.
Ejemplo de uso:
<com.pagesuite.flowtext.FlowTextView
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:padding="10dip"
android:src="@drawable/android" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginTop="400dip"
android:padding="10dip"
android:src="@drawable/android2" />
</com.pagesuite.flowtext.FlowTextView>
Luego en el código:
tv = (FlowTextView) findViewById(R.id.tv);
Spanned spannable = Html.fromHtml("<html ... </html>");
tv.setText(spannable); // using html
tv.setText("my string"); // using plain text
tv.invalidate(); // call this to render the text
siempre encantados de ayudarle si tiene algún problema con esto, encontrar mi correo electrónico en mi perfil
¿Qué tan rápido es esto? ¿Utiliza WebView adentro? –
No es nativo, es muy rápido –
No quiero scrollview en esta biblioteca, en su lugar quiero elipsear texto. Alguna solución ? –
Si desea para usar solo la flotante izquierda y para teléfonos Android a partir de la versión 2.2, puede usar la solución que he descrito en mi respuesta a otra pregunta aquí: http://stackoverflow.com/a/8463221/427225 – vorrtex