zoukankan      html  css  js  c++  java
  • android 图片设置圆角

    eoe社区相关的帖子:

    Android 图片圆角
    http://www.eoeandroid.com/thread-103490-1-1.html

    实现Android图片圆角(转载)
    http://www.eoeandroid.com/thread-167079-1-1.html

    把图片变成圆角
    http://www.eoeandroid.com/thread-164071-1-1.html

    -----------------------帖子正文---------------------

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@+id/layout"
         android:orientation="vertical"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         >
    </LinearLayout>
    package com.test.demo;
    
    import android.app.Activity;
    import android.graphics.Bitmap;
    import android.graphics.Bitmap.Config;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.graphics.Paint;
    import android.graphics.PorterDuff.Mode;
    import android.graphics.PorterDuffXfermode;
    import android.graphics.Rect;
    import android.graphics.RectF;
    import android.graphics.drawable.BitmapDrawable;
    import android.graphics.drawable.Drawable;
    import android.os.Bundle;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    
    public class MyActivity extends Activity {
         /** Called when the activity is first created. */
         @Override
         public void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.main);
    
    //        Drawable drawable = getResources().getDrawable(R.drawable.bg);
    //        BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
    //        Bitmap bitmap = bitmapDrawable.getBitmap();
            
             LinearLayout layout = (LinearLayout) findViewById(R.id.layout);
             Drawable drawable = getResources().getDrawable(R.drawable.bg);
             BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
             Bitmap bitmap = bitmapDrawable.getBitmap();
            
             BitmapDrawable bbb = new BitmapDrawable(toRoundCorner(bitmap, 30));
             layout.setBackgroundDrawable(bbb);
             //ImageView imageView = (ImageView) findViewById(R.id.imgShow);
             //imageView.setImageBitmap(MyActivity.getRoundedCornerBitmap(bitmap));
             //imageView.setImageBitmap(MyActivity.toRoundCorner(bitmap, 20));
         }
         public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) { 
              
             Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); 
             Canvas canvas = new Canvas(output); 
      
             final int color = 0xff424242; 
             final Paint paint = new Paint(); 
             final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); 
             final RectF rectF = new RectF(rect); 
             final float roundPx = pixels; 
      
             paint.setAntiAlias(true); 
             canvas.drawARGB(0, 0, 0, 0); 
             paint.setColor(color); 
             canvas.drawRoundRect(rectF, roundPx, roundPx, paint); 
      
             paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); 
             canvas.drawBitmap(bitmap, rect, rect, paint); 
      
             return output; 
         }
    }


    原文链接:http://www.eoeandroid.com/thread-233561-1-1.html

  • 相关阅读:
    微信机器人开发SDK使用教程--清粉任务
    微信机器人开发SDK使用教程--养号任务停止
    linux和 unix 介绍
    thinkphp5.1学习笔记
    nginx的相关配置记录和总结
    php优秀框架codeigniter学习系列——CI_URI类学习
    求职过程中的灵感
    设计模式学习系列——过滤器模式
    php优秀框架codeigniter学习系列——CI_Utf8类
    php优秀框架codeigniter学习系列——hooks
  • 原文地址:https://www.cnblogs.com/vus520/p/2795870.html
Copyright © 2011-2022 走看看