当前位置:首页 » 安卓系统 » android图片加圆角

android图片加圆角

发布时间: 2022-04-24 09:13:56

⑴ 安卓怎么用美图秀秀将图片的四个角做成的圆角

1、用美图秀秀打开图片,选择美化图片;

⑵ android怎么将布局设置圆角

设置布局背景为圆角的,还有一种方法是直接设置一张圆角图片。

制作圆角:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#000000" />
<corners android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"/>
</shape>
解释:solid的表示填充颜色,为了简单,这里用的是黑色。而corners则是表示圆角

⑶ android 如何重写imageview 让图片有圆角效果

android 自定义圆角ImageView以及锯齿的处理

看到很多人开发过程中要使用圆角图片时,解决方法有:


1.重新绘制一张图片


2.通过布局来配置


3.通过重写View来实现


其中1,2在这里就不讲了,重点讲讲方法三的实现。



实现一:通过截取画布一个圆形区域与图片的相交部分进行绘制,缺点:锯齿明显,设置Paint,Canvas抗锯齿无效。

package com.open.circleimageview.widget;


import android.content.Context;

import android.graphics.Bitmap;

import android.graphics.Canvas;

import android.graphics.Paint;

import android.graphics.PaintFlagsDrawFilter;

import android.graphics.Path;

import android.graphics.Rect;

import android.graphics.Region;

import android.util.AttributeSet;

import android.view.View;


public class CircleImageViewA extends View {


public CircleImageViewA(Context context, AttributeSet attrs, int defStyle) {

super(context, attrs, defStyle);

}


public CircleImageViewA(Context context, AttributeSet attrs) {

super(context, attrs);

}


public CircleImageViewA(Context context) {

super(context);

}


private Bitmap bitmap;

private Rect bitmapRect=new Rect();

private PaintFlagsDrawFilter pdf=new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG);

private Paint paint = new Paint();

{

paint.setStyle(Paint.Style.STROKE);

paint.setFlags(Paint.ANTI_ALIAS_FLAG);

paint.setAntiAlias(true);// 设置画笔的锯齿效果。 true是去除,大家一看效果就明白了

}

private Path mPath=new Path();

public void setImageBitmap(Bitmap bitmap)

{

this.bitmap=bitmap;

}

@Override

protected void onDraw(Canvas canvas) {


if(null==bitmap)

{

return;

}

bitmapRect.set(0, 0, getWidth(), getHeight());

canvas.save();

canvas.setDrawFilter(pdf);

mPath.reset();

canvas.clipPath(mPath); // makes the clip empty

mPath.addCircle(getWidth()/2, getWidth()/2, getHeight()/2, Path.Direction.CCW);

canvas.clipPath(mPath, Region.Op.REPLACE);

canvas.drawBitmap(bitmap, null, bitmapRect, paint);

canvas.restore();

}

}


实现二:通过PorterDuffXfermode 方式(注意要设置硬件加速,否则部分机子无效),优点:锯齿基本没有

package com.open.circleimageview.widget;


import android.content.Context;

import android.graphics.Bitmap;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Paint;

import android.graphics.PaintFlagsDrawFilter;

import android.graphics.PorterDuff;

import android.graphics.PorterDuffXfermode;

import android.graphics.Rect;

import android.graphics.RectF;

import android.util.AttributeSet;

import android.view.View;


public class CircleImageViewB extends View {


public CircleImageViewB(Context context, AttributeSet attrs, int defStyle) {

super(context, attrs, defStyle);

init();

}


public CircleImageViewB(Context context, AttributeSet attrs) {

super(context, attrs);

init();

}


public CircleImageViewB(Context context) {

super(context);

init();

}


private Bitmap bitmap;

private Rect bitmapRect=new Rect();

private PaintFlagsDrawFilter pdf=new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG);

private Paint paint = new Paint();

{

paint.setStyle(Paint.Style.STROKE);

paint.setFlags(Paint.ANTI_ALIAS_FLAG);

paint.setAntiAlias(true);// 设置画笔的锯齿效果。 true是去除,大家一看效果就明白了

}

private Bitmap mDstB=null;

private PorterDuffXfermode xfermode=new PorterDuffXfermode(PorterDuff.Mode.MULTIPLY);

private void init()

{

try {

if(android.os.Build.VERSION.SDK_INT>=11)

{

setLayerType(LAYER_TYPE_SOFTWARE, null);

}

} catch (Exception e) {

e.printStackTrace();

}

}

public void setImageBitmap(Bitmap bitmap)

{

this.bitmap=bitmap;

}


private Bitmap makeDst(int w, int h)

{

Bitmap bm = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);

Canvas c = new Canvas(bm);

Paint p = new Paint(Paint.ANTI_ALIAS_FLAG);

p.setColor(Color.parseColor("#ffffffff"));

c.drawOval(new RectF(0, 0, w, h), p);

return bm;

}

@Override

protected void onDraw(Canvas canvas) {


if(null==bitmap)

{

return;

}

if(null==mDstB)

{

mDstB=makeDst(getWidth(), getHeight());

}


bitmapRect.set(0, 0, getWidth(), getHeight());

canvas.save();

canvas.setDrawFilter(pdf);

canvas.drawBitmap(mDstB, 0, 0, paint);

paint.setXfermode(xfermode);

canvas.drawBitmap(bitmap, null, bitmapRect, paint);

paint.setXfermode(null);

canvas.restore();

}

}


⑷ Android学习之 圆角边框的几种实现方式

第一种,自定义view
第二种,xml里面使用shape 属性
第三种,直接使用 http://www.it399.com/imageRound 生成原角图片作为背景,望采纳,谢谢!

⑸ 我想在Android的一个网格视图中显示图片,并对这些图片添加一个圆角矩形边框,我该怎么做

移动工具 【V】 直接选取工具、组选取工具 【A】 钢笔、添加锚点、删除锚点、改变路径角度 【P】 添加锚点工具 【+】 删除锚点工具 【-】 文字、区域文字、路径文字、竖向文字、竖向区域文字、竖向路径文字 【T】 椭圆、多边形、星形、螺旋形 【L】 增加边数、倒角半径及螺旋圈数(在【L】、【M】状态下绘图) 【↑】 减少边数、倒角半径及螺旋圈数(在【L】、【M】状态下绘图) 【↓】 矩形、圆角矩形工具 【M】 画笔工具 【B】 铅笔、圆滑、抹除工具 【N】 旋转、转动工具 【R】 缩放、拉伸工具 【S】 镜向、倾斜工具 【O】 自由变形工具 【E】 混合、自动勾边工具 【W】 图表工具(七种图表) 【J】 渐变网点工具 【U】 渐变填色工具 【G】 颜色取样器 【I】 油漆桶工具 【K】 剪刀、餐刀工具 【C】 视图平移、页面、尺寸工具 【H】 放大镜工具 【Z】 默认前景色和背景色 【D】 切换填充和描边 【X】 标准屏幕模式、带有菜单栏的全屏模式、全屏模式 【F】 切换为颜色填充 【】 切换为无填充 【/】 临时使用抓手工具 【空格】 精确进行镜向、旋转等操作 选择相应的工具后按【回车】 复制物体 在【R】、【O】、【V】等状态下按【Alt】+【拖动】 文件操作 新建图形文件 【Ctrl】+【N】 打开已有的图像 【Ctrl】+【O】 关闭当前图像 【Ctrl】+【W】 保存当前图像 【Ctrl】+【S】 另存为... 【Ctrl】+【Shift】+【S】 存储副本 【Ctrl】+【Alt】+【S】 页面设置 【Ctrl】+【Shift】+【P】 文档设置 【Ctrl】+【Alt】+【P】 打印 【Ctrl】+【P】 打开“预置”对话框 【Ctrl】+【K】 回复到上次存盘之前的状态 【F12】 编辑操作 还原前面的操作(步数可在预置中) 【Ctrl】+【Z】 重复操作 【Ctrl】+【Shift】+【Z】 将选取的内容剪切放到剪贴板 【Ctrl】+【X】或【F2】 将选取的内容拷贝放到剪贴板 【Ctrl】+【C】 将剪贴板的内容粘到当前图形中 【Ctrl】+【V】或【F4】 将剪贴板的内容粘到最前面 【Ctrl】+【F】 将剪贴板的内容粘到最后面 【Ctrl】+【B】 删除所选对象 【DEL】 选取全部对象 【Ctrl】+【A】 取消选择 【Ctrl】+【Shift】+【A】 再次转换 【Ctrl】+【D】 发送到最前面 【Ctrl】+【Shift】+【]】 向前发送 【Ctrl】+【]】 发送到最后面 【Ctrl】+【Shift】+【[】 向后发送 【Ctrl】+【[】 群组所选物体 【Ctrl】+【G】 取消所选物体的群组 【Ctrl】+【Shift】+【G】 锁定所选的物体 【Ctrl】+【2】 锁定没有选择的物体 【Ctrl】+【Alt】+【Shift】+【2】 全部解除锁定 【Ctrl】+【Alt】+【2】 隐藏所选物体 【Ctrl】+【3】 隐藏没有选择的物体 【Ctrl】+【Alt】+【Shift】+【3】 显示所有已隐藏的物体 【Ctrl】+【Alt】+【3】 联接断开的路径 【Ctrl】+【J】 对齐路径点 【Ctrl】+【Alt】+【J】 调合两个物体 【Ctrl】+【Alt】+【B】 取消调合 【Ctrl】+【Alt】+【Shift】+【B】 调合选项 选【W】后按【回车】 新建一个图像遮罩 【Ctrl】+【7】 取消图像遮罩 【Ctrl】+【Alt】+【7】 联合路径 【Ctrl】+【8】 取消联合 【Ctrl】+【Alt】+【8】 图表类型 选【J】后按【回车】 再次应用最后一次使用的滤镜 【Ctrl】+【E】 应用最后使用的滤镜并调节参数 【Ctrl】+【Alt】+【E】 文字处理 文字左对齐或顶对齐 【Ctrl】+【Shift】+【L】 文字中对齐 【Ctrl】+【Shift】+【C】 文字右对齐或底对齐 【Ctrl】+【Shift】+【R】 文字分散对齐 【Ctrl】+【Shift】+【J】 插入一个软回车 【Shift】+【回车】 精确输入字距调整值 【Ctrl】+【Alt】+【K】 将字距设置为0 【Ctrl】+【Shift】+【Q】 将字体宽高比还原为1比1 【Ctrl】+【Shift】+【X】 左/右选择 1 个字符 【Shift】+【←】/【→】 下/上选择 1 行 【Shift】+【↑】/【↓】 选择所有字符 【Ctrl】+【A】 选择从插入点到鼠标点按点的字符 【Shift】加点按 左/右移动 1 个字符 【←】/【→】 下/上移动 1 行 【↑】/【↓】 左/右移动1个字 【Ctrl】+【←】/【→】 将所选文本的文字大小减小2 点象素 【Ctrl】+【Shift】+【】 将所选文本的文字大小减小10 点象素 【Ctrl】+【Alt】+【Shift】+【】 将行距减小2点象素 【Alt】+【↓】 将行距增大2点象素 【Alt】+【↑】 将基线位移减小2点象素 【Shift】+【Alt】+【↓】 将基线位移增加2点象素 【Shift】+【Alt】+【↑】 将字距微调或字距调整减小20/1000ems 【Alt】+【←】 将字距微调或字距调整增加20/1000ems 【Alt】+【→】 将字距微调或字距调整减小100/1000ems 【Ctrl】+【Alt】+【←】 将字距微调或字距调整增加100/1000ems 【Ctrl】+【Alt】+【→】 光标移到最前面 【HOME】 光标移到最后面 【END】 选择到最前面 【Shift】+【HOME】 选择到最后面 【Shift】+【END】 将文字转换成路径 【Ctrl】+【Shift】+【O】 视图操作 将图像显示为边框模式(切换) 【Ctrl】+【Y】 对所选对象生成预览(在边框模式中) 【Ctrl】+【Shift】+【Y】 放大视图 【Ctrl】+【+】 缩小视图 【Ctrl】+【-】 放大到页面大小 【Ctrl】+【0】 实际象素显示 【Ctrl】+【1】 显示/隐藏所路径的控制点 【Ctrl】+【H】 隐藏模板 【Ctrl】+【Shift】+【W】 显示/隐藏标尺 【Ctrl】+【R】 显示/隐藏参考线 【Ctrl】+【;】 锁定/解锁参考线 【Ctrl】+【Alt】+【;】 将所选对象变成参考线 【Ctrl】+【5】 将变成参考线的物体还原 【Ctrl】+【Alt】+【5】 贴紧参考线 【Ctrl】+【Shift】+【;】 显示/隐藏网格 【Ctrl】+【”】 贴紧网格 【Ctrl】+【Shift】+【”】 捕捉到点 【Ctrl】+【Alt】+【”】 应用敏捷参照 【Ctrl】+【U】 显示/隐藏“字体”面板 【Ctrl】+【T】 显示/隐藏“段落”面板 【Ctrl】+【M】 显示/隐藏“制表”面板 【Ctrl】+【Shift】+【T】 显示/隐藏“画笔”面板 【F5】 显示/隐藏“颜色”面板 【F6】/【Ctrl】+【I】 显示/隐藏“图层”面板 【F7】 显示/隐藏“信息”面板 【F8】 显示/隐藏“渐变”面板 【F9】 显示/隐藏“描边”面板 【F10】 显示/隐藏“属性”面板 【F11】 显示/隐藏所有命令面板 【TAB】 显示或隐藏工具箱以外的所有调板 【Shift】+【TAB】 选择最后一次使用过的面板 【Ctrl】+【~】

⑹ android自定义的ImageButton怎样再让它是个圆角的

跟普通的按钮一样使用,定义,activity中调用资源显示,添加监听器,主要区别就是这个按钮要添加一个图片资源。这个可以在xml文件中解决android:src=“@drawable/fdafsafdsaf”

⑺ Android中实现圆角图片的几种姿势

  1. 真正的圆角图片

  2. 创建drawable的xml文件,指定radio

《末日地窖》

⑻ 如何给imageview设置圆角

android设置imageview圆角主要使用的是shape.xml文件,对四个角的角度进行设置,只要再imageview的background的属性上加上shape文件即可达到效果,示例如下:
shapeyuanjiao3.xml:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >

<!-- 填充的颜色 -->
<solid android:color="#0000FF" />
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:topLeftRadius="@dimen/RoundedAmplitude" android:topRightRadius="@dimen/RoundedAmplitude"/>

<gradient
android:angle="270"
android:centerColor="#0000FF"
android:endColor="#0000FF"
android:startColor="#0000FF" />

</shape>
imageview、textview等的android:background="@drawable/shapeyuanjiao3"属性,设置尺寸、圆角(可以定制单独显示哪个角需要圆角)。可以参考我的csdn博客的这篇文章:http://blog.csdn.net/nihaoqiulinhe/article/details/46833819

⑼ 怎么把一个textview的背景图片设置成圆角的

在drawable文件夹下新建一个文件设置背景样式
代码:
在drawable文件夹下面新建text_view_border.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#80858175" />
<stroke android:width="1dip" android:color="#aea594" />
<corners android:topleftradius="2dp"
android:toprightradius="2dp"
android:bottomrightradius="2dp"
android:bottomleftradius="2dp"/>
</shape>

在布局文件调用:
<textview
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/text_view_border" />

在类文件中调用:
tv.setbackgroundresource(r.drawable.text_view_border);

分析:
solid设置填充颜色,颜色值以#80开头表示透明
stroke 设置边框宽度,颜色值
corners设置圆角

⑽ android 显示圆角图片,可指定哪个角为圆角

使用shape文件的话,然后设置到某个控件上面,设置某个角为某种角度都是可以的。

热点内容
怎么设置电脑开机密码和屏幕锁 发布:2025-05-16 03:07:05 浏览:55
华为锁屏密码忘记了怎么解锁 发布:2025-05-16 03:06:26 浏览:474
安卓文字为什么没有苹果舒服 发布:2025-05-16 03:01:26 浏览:357
phpnow解压版 发布:2025-05-16 02:52:49 浏览:811
dmporacle数据库 发布:2025-05-16 02:44:31 浏览:831
云主机上传 发布:2025-05-16 02:44:30 浏览:82
鼠标如何编程 发布:2025-05-16 02:29:09 浏览:816
安卓70能用什么软件 发布:2025-05-16 01:45:09 浏览:481
编程发展史 发布:2025-05-16 01:38:52 浏览:529
android图片气泡 发布:2025-05-16 01:38:40 浏览:887