當前位置:首頁 » 安卓系統 » 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文件的話,然後設置到某個控制項上面,設置某個角為某種角度都是可以的。

熱點內容
ubuntuphp版本 發布:2024-05-19 21:59:12 瀏覽:928
解壓文案館 發布:2024-05-19 21:58:54 瀏覽:870
蘇寧訪問數 發布:2024-05-19 21:53:49 瀏覽:580
濕地下載ftp 發布:2024-05-19 21:46:10 瀏覽:487
java二分查找演算法 發布:2024-05-19 21:37:38 瀏覽:347
所有編程語言 發布:2024-05-19 21:33:55 瀏覽:665
c語言1到10的階乘的和 發布:2024-05-19 21:32:25 瀏覽:628
php匹配標點符號 發布:2024-05-19 21:14:49 瀏覽:753
可以拍照輸入的c語言編譯器 發布:2024-05-19 21:09:47 瀏覽:182
解壓升降機 發布:2024-05-19 20:51:11 瀏覽:968