Amigos ¿Cómo mostrar el borde de la imagen?Cómo mostrar el borde a la vista de imagen?
Quiero Resultado Me gusta Me gusta Galería toda la visualización de la imagen con borde.
PLZ me dan la American National Standard gracias por adelantado ....
Amigos ¿Cómo mostrar el borde de la imagen?Cómo mostrar el borde a la vista de imagen?
Quiero Resultado Me gusta Me gusta Galería toda la visualización de la imagen con borde.
PLZ me dan la American National Standard gracias por adelantado ....
Puede crear un recurso (capa estirable XML) para 'frontera' (en realidad de fondo) sus ImageView
's, y declarar en su theme
que el ImageView
El recurso de fondo es el xml dibujable.
Si necesita esta "frontera" que ser cambiado según el estado de la ImageView
's (focused
, selected
, etc.), entonces debería crear más dibujables capa, y ponerlos juntos en un xml selector (estado estirable) .
Luego en su tema debe configurar el fondo ImageView
para que sea selector.xml
.
actualización
A continuación se muestra un ejemplo de cómo especificar una frontera simple de sus imágenes, que se traducirá en
Tienes que
image_border.xml
),styles.xml
el archivocolors.xml
ImageView
.res/estirable/image_border.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<gradient android:angle="90"
android:startColor="@color/image_border_start"
android:centerColor="@color/image_border_center"
android:endColor="@color/image_border_end" />
</shape>
</item>
<item android:top="2dp" android:left="2dp"
android:right="2dp" android:bottom="2dp">
<shape android:shape="rectangle">
<solid android:color="@color/default_back_color" />
</shape>
</item>
</layer-list>
res/valores/styles.xml
añadir las siguientes líneas:
<style name="myImageView">
<!-- 3dp so the background border to be visible -->
<item name="android:padding">3dp</item>
<item name="android:background">@drawable/image_border</item>
<item name="android:scaleType">fitCenter</item>
</style>
res/valores/colors.xml
Añadir las siguientes líneas:
<color name="image_border_start">#40990000</color>
<color name="image_border_end">#FF660000</color>
<color name="image_border_center">#FFFF3333</color>
Y finalmente especificar el estilo de su ImageView
en su xml diseño:
<ImageView android:id="@+id/my_image"
android:layout_width="100dp" android:layout_height="100dp"
android:src="@drawable/efteling"
style="@style/myImageView" />
Usted puede utilizar este archivo XML como un estirable en lugar de varios archivos, pero este archivo se coloca en una carpeta dibujable. En ImageView use este archivo XML como un fondo dibujable , como: android:background="@drawable/following code file name"
.
Espero que esto sea útil para usted.
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<stroke android:width="1dp" android:color="#000000" />
<padding android:left="1dp" android:top="1dp" android:right="1dp"
android:bottom="1dp" />
</shape>
¡Intenté todas las soluciones antedichas pero no funcionaron para mí! ¡Así que descubrí una solución simple para esto! :-)
Recuerdo que leí acerca de FrameLayout de Android en el siguiente article diciendo que nos ayuda a apilar nuestros elementos de interfaz de usuario uno encima del otro en el mismo orden en que los sumamos.
Solución:
<FrameLayout
android:layout_width="112dp"
android:layout_height="112dp"
android:layout_marginLeft="16dp" <!-- May vary according to your needs -->
android:layout_marginRight="16dp" <!-- May vary according to your needs -->
android:layout_centerVertical="true">
<!-- following imageView acts as the boarder which sitting in the background of our main container ImageView -->
<ImageView
android:layout_width="112dp"
android:layout_height="112dp"
android:background="#000"/>
<!-- following imageView holds the image as the container to our image -->
<!-- layout_margin defines the width of our boarder, here it's 1dp -->
<ImageView
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_margin="1dp"
android:id="@+id/itemImageThumbnailImgVw"
android:src="@drawable/banana"
android:background="#FFF"/>
</FrameLayout>
Vista previa:
Y eso es todo. Obtendrás lo siguiente como imageView!
pros y contras:
creo que esto es bastante fácil solución para ser utilizado en cualquier otro lugar y que es todo lo que haces se asienta en un solo lugar tan fácil para modificarlo. Sin embargo, no me gusta tener que agregar dos ImageViews.
Gracias amigos para obtener información. – Piyush
No hay problema, espero que pueda comenzar con el ejemplo anterior. Si necesita más información, no dude en preguntar :) – rekaszeru
Gracias de nuevo por el código ....... – Piyush