【android中级】之android 背景圆角和图片圆角
1.建立一个xml文件,命名为circle_corner,放置到drawable目录下,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android = "http://schemas.android.com/apk/res/android">
<gradient android:endColor="@android:color/transparent"
android:startColor="#000000"
android:gradientRadius="60"
android:type="radial"/>
<corners android:radius="10px"/>
</shape>
圆角效果二
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#99FFFFFF"/>
<corners android:radius="30px"/>
<padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" />
</shape>
2.在需要圆角背景的元件上设置背景为circle_corner
<TextView android:text="abc"
android:background="@drawable/circle_corner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
- 图片本身加上圆角
Bitmap myCoolBitmap = ... ; // <-- Your bitmap you want rounded
int w = myCoolBitmap.getWidth(), h = myCoolBitmap.getHeight();
Bitmap rounder = Bitmap.createBitmap(w,h,Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(rounder);
Paint xferPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
xferPaint.setColor(Color.RED);
canvas.drawRoundRect(new RectF(0,0,w,h), 20.0f, 20.0f, xferPaint);
xferPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN));
canvas.drawBitmap(myCoolBitmap, 0,0, null);
canvas.drawBitmap(rounder, 0, 0, xferPaint);
或者
public static Bitmap getRoundedCornerBitmap(Bitmap bitmap) {
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 = 12;
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;
}
更多相关文章
- Android应用开发UI(自动提示)自动补全
- android viewflipper 左右滑动切换显示图片效果
- android之硬件访问服务框架
- Android(安卓)三种方式实现自定义圆形页面加载中效果的进度条
- android给 TextView 加上效果和事件响应 判断是否点击函数
- Android------Button 添加声音效果(两种方式)
- android毛玻璃背景简单实现
- Android(安卓)Dialog 对话框
- 【转】【Android】开源项目汇总-备用