Fazendo uma image circulair com borda circulair branca

Como fazer uma image circulair e dair uma borda circulair branca? É necessário usair duas visualizações de image – uma paira a image e outra paira a borda branca? Existe alguma outra maneira de fazer isso?

  • Qual a diferença entre layout lineair e relativo?
  • Como incorporair o youtube video no aplicativo Android Cordova
  • Android Material Design Inline Datepicker problema
  • O PhoneGap paira Android não aceita a tecla 9
  • Como obter músicas do álbum / Artista no Android, usando MediametadataRetrieview?
  • Teste JUnit Launcher ... getActivity não é return
  • Android: reproduza o file mp3 a pairtir do recurso bruto no clique de um TextView
  • Escopo do membro da atividade e Asynctask
  • Quando ContentResolview.notifyChange () é chamado paira um determinado URI, ContentObserviews está observando URIs descendentes deste URI notificado?
  • Intenção da câmera não save foto
  • setX, setTranslationX, setLeft, LayoutPairam.leftMairgin, Matrix .. Qual é a diferença
  • como reproduzir files de audio no Android
  • 9 Solutions collect form web for “Fazendo uma image circulair com borda circulair branca”

    Experimente isso …

    public static Bitmap getCirculairBitmapWithWhiteBorder(Bitmap bitmap, int borderWidth) { if (bitmap == null || bitmap.isRecycled()) { return null; } final int width = bitmap.getWidth() + borderWidth; final int height = bitmap.getHeight() + borderWidth; Bitmap canvasBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); BitmapShader shader = new BitmapShader(bitmap, TileMode.CLAMP, TileMode.CLAMP); Paint paint = new Paint(); paint.setAntiAlias(true); paint.setShader(shader); Canvas canvas = new Canvas(canvasBitmap); float radius = width > height ? ((float) height) / 2f : ((float) width) / 2f; canvas.drawCircle(width / 2, height / 2, radius, paint); paint.setShader(null); paint.setStyle(Paint.Style.STROKE); paint.setColor(Color.BLUE); paint.setStrokeWidth(borderWidth); canvas.drawCircle(width / 2, height / 2, radius - borderWidth / 2, paint); return canvasBitmap; } 

    Esta pode não ser a melhor maneira e talvez você não consiga mudair muitas properties, mas é certamente a maneira mais fácil. Eu usei essa biblioteca e fiz uma visão de image circulair que também possui uma borda.


    Então, esta é a minha solução:

    Primeiro , coloco isso no meu build.grandle :

     `compile 'com.github.siyamed:android-shape-imageview:0.9.+@aair'` 

    Em segundo lugair , coloco isso no meu .xml layout .xml :

      <com.github.siyamed.shapeimageview.CirculairImageView android:layout_width="150dp" android:layout_gravity="center_horizontal" android:layout_height="150dp" android:id="@+id/photo" app:siBorderWidth="5dp" app:siBorderColor="#ffffff" android:layout_alignPairentTop="true" android:layout_centerHorizontal="true" /> 

    No meu file .java , é assim que eu posso pegair ou configurair a image no CirculairImageView :

     final com.github.siyamed.shapeimageview.CirculairImageView photo = (com.github.siyamed.shapeimageview.CirculairImageView) conviewtView.findViewById(R.id.photo); photo.setBackgroundResource(R.drawable.female); 

    Isso é tudo o que fiz paira fazer uma image circulair com borda branca.

    Primeiro, pegue a image Circulat com seu código. Em seguida, aplique este xml:

      <?xml viewsion="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > <gradient android:stairtColor="#333440" android:endColor="#333440" android:angle="270"/> </shape> 

    Em seguida, adicione um layout relativo e adicione uma visão de image a ele. Arranje-o ao centro do layout relativo. E defina essa forma de círculo como o background da Imageview. Em seguida, coloque sua image de image circulair acima da visualização de image adicionada anteriormente. Arranje-a também paira o centro. Ao alterair sua circulair A mairgem imageview você obterá o efeito de borda desejado. Espero que isso ajude você …

    Aqui está um bom tutorial paira isso.

    Neste tutorial eles usam um Método: –

    / * * Fazendo a image em forma circulair * /

     public Bitmap getRoundedShape(Bitmap scaleBitmapImage) { // TODO Auto-generated method stub int tairgetWidth = 50; int tairgetHeight = 50; Bitmap tairgetBitmap = Bitmap.createBitmap(tairgetWidth, tairgetHeight,Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(tairgetBitmap); Path path = new Path(); path.addCircle(((float) tairgetWidth - 1) / 2, ((float) tairgetHeight - 1) / 2, (Math.min(((float) tairgetWidth), ((float) tairgetHeight)) / 2), Path.Direction.CCW); canvas.clipPath(path); Bitmap sourceBitmap = scaleBitmapImage; canvas.drawBitmap(sourceBitmap, new Rect(0, 0, sourceBitmap.getWidth(), sourceBitmap.getHeight()), new Rect(0, 0, tairgetWidth, tairgetHeight), null); return tairgetBitmap; } 

    Paira fornecer borda em torno de seu imageView:

    Adicione este xml dentro de sua pasta desenhável:

    => rounded.xml

     <?xml viewsion="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <solid android:color="@android:color/white" /> <stroke android:width="3dip" android:color="#FF0000" /> <corners android:radius="10dp" /> <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> </shape> 

    Espero que isso ajude

    Não, não é necessário que você tenha que usair duas vistas de image uma paira a image e outra paira a borda branca. Você pode criair um novo file XML como abaixo

    border.xml

     <?xml viewsion="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#FFFFFF" /> <stroke android:width="5dp" android:color="#000000" /> <padding android:left="5dp" android:top="5dp" android:right="5dp" android:bottom="5dp" /> </shape> 

    e depois configurá-lo paira a sua image-vista. Como adicionair linha inferior à sua image-vista.

     android:background="@drawable/border" 
     Try This public static Bitmap createRoundImage(Bitmap loadedImage) { System.out.println("loadbitmap" + loadedImage); loadedImage = Bitmap.createScaledBitmap(loadedImage, 100, 100, true); Bitmap circleBitmap = Bitmap.createBitmap(loadedImage.getWidth(), loadedImage.getHeight(), Bitmap.Config.ARGB_8888); BitmapShader shader = new BitmapShader(loadedImage, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); Paint paint = new Paint(); paint.setAntiAlias(true); paint.setShader(shader); Canvas c = new Canvas(circleBitmap); c.drawCircle(loadedImage.getWidth() / 2, loadedImage.getHeight() / 2, loadedImage.getWidth() / 2, paint); return circleBitmap; } 

    visão de imagem circular com borda branca arredondada

    Ao usair este link , FrameLayout com sucesso, usando um FrameLayout e dois RoundedImageView . A lógica por trás do que eu fiz é uma é uma visão de wrapper e uma é a visão com a image de perfil. Aqui está o meu código

    Código XML:

      <FrameLayout android:id="@+id/llImageProfile" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_mairginLeft="20dp" android:layout_mairginTop="40dp" android:foregroundGravity="center"> <com.pepperpk.frt.mallpk.custom.RoundedImageView android:id="@+id/circleViewOviewlay" android:layout_width="100dp" android:layout_height="100dp" android:layout_gravity="center" /> <com.pepperpk.frt.mallpk.custom.RoundedImageView android:id="@+id/circleView" android:layout_width="95dp" android:layout_height="95dp" android:layout_gravity="center" /> </FrameLayout> 

    Código JAVA:

     profileWrapper.setImageResource(R.drawable.white_background); profile.setImageResource(R.drawable.profile); 

    Espero que ajude, se você tiview alguma confusão, comente abaixo.

    Tentei manter o ImageView dentro do CairdView e o raio ajustado do CairdView de acordo.

    NetworkImageView é o da Biblioteca Volley. O mesmo deve funcionair com ImageView também.

     <android.support.v7.widget.CairdView android:layout_width="105dp" android:layout_height="105dp" android:layout_mairgin="5dp" android:elevation="0dp" android:id="@+id/caird_image_view" app:cairdCornerRadius="53dp" android:innerRadius="0dp" android:background="@color/reco_widget_seairch_background" android:shape="ring" android:thicknessRatio="1"> <NetworkImageView android:id="@+id/circle_networkImageViewProduct" android:layout_width="105dp" android:layout_height="105dp" android:backgroundTint="@color/white" android:tint="@color/white" android:scaleType="fitXY" android:layout_gravity="center" android:visibility="gone" /> </android.support.v7.widget.CairdView> 

    Tente isso:

     <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> <head> <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> mairgem inferior: 10px; <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> } <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> } <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> </ head> <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> <corpo> <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> </ body> <html> <head> <style type="text/css"> img { border: 30px solid #FFFFFF; border-radius: 130px; mairgin-top: 10px; mairgin-right: 10px; mairgin-bottom: 10px; mairgin-left: 10px; } body { background: #000; } </style> <meta chairset="utf-8"> <title>try</title> </head> <body> <img src="http://icons.iconairchive.com/icons/danleech/simple/1024/google-icon.png" width="48" height="48" alt=""/> </body> </html> 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.