android裁剪圓型頭像
用況:
有時候我們需要設定一個頭像,需要在一張拍照或者相簿中的圖片裡擷取一個區域另存為一張圖片,用做頭像顯示
提供一個demo
可選擇拍照或者選擇相簿圖片
我這裡選擇了一張相簿裡的圖片,主要是跳轉到ClipActivity,選擇好裁剪的區域後,點選確認,呼叫ClipImageLayout的clip方法即可。
我這裡會把裁剪完的圖片儲存到一個臨時檔案,然後根據路徑顯示出來,你們可以根據自己的需要用做上傳或者其他快取處理。
其中
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN)
以防止不同手機的通知欄高度會影響判斷裁剪區域是否超出圖片範圍的準確性;
並且,裁剪介面是將選擇的圖片轉換為bitmap進行顯示的,如果資源過大,會導致記憶體溢位,所以還需要進行一步壓縮:
Bitmap bitmap=ImageTools.convertToBitmap(path, 600,600);
另:如若想改為裁剪方形頭像,則可將裁剪介面裁剪區域邊框改為正方形即可:
//方形邊框
// canvas.drawRect(mHorizontalPadding, mVerticalPadding, getWidth()- mHorizontalPadding, getHeight() - mVerticalPadding, mPaint);
//圓形邊框
canvas.drawCircle( getWidth()/2, getHeight()/2, getWidth()/2-mHorizontalPadding, mPaint);
程式碼下載
相關文章
- Android 圓形頭像 相簿和拍照裁剪選取Android
- Android之圓形頭像裁切Android
- Android 自定義圓形頭像Android
- Android自定義圓形頭像Android
- Android 圓形頭像 自己動手Android
- Flutter 圓形/圓角頭像Flutter
- 編寫一個頭像裁剪元件(一)元件
- 《Android開發卷——設定圓形頭像,Android擷取圓形圖片》Android
- Kotlin 背景圓頭像圖Kotlin
- android圓形頭像的選擇和剪下並儲存出圓形圖片Android
- 使用 RoundedBitmapDrawable 建立圓角頭像詳解
- 基於 GD 庫生成圓形頭像
- 自定義頭像圓角控制元件控制元件
- 自定義圓形ImageView(仿QQ頭像)View
- 自定義ImageView完成圓形頭像自定義View
- CircleImageView 圓形圖片頭像實現View
- Android呼叫攝像頭Android
- Android 自定義圓形旋轉進度條,仿微博頭像載入效果Android
- android opencv 前置攝像頭AndroidOpenCV
- Android呼叫攝像頭拍照Android
- android 開啟攝像頭Android
- 修正Android攝像頭APIAndroidAPI
- Android 呼叫攝像頭拍照Android
- Android如何呼叫攝像頭Android
- 小程式之open-data userAvatarUrl頭像做圓角
- Android提供的攝像頭拍照Android
- u3d 呼叫android相機和相簿裁剪成圓形3DAndroid
- ios Image裁剪成圓形的方法iOS
- [譯]Android的多攝像頭支援Android
- [譯] Android 的多攝像頭支援Android
- Android 頭像選擇功能實戰Android
- 微信小程式獲取使用者頭像修改為圓形微信小程式
- 頭像
- 微信小程式裁剪圖片成圓形微信小程式
- Android 攝像頭預覽懸浮窗Android
- 照片系列之android呼叫攝像頭拍照Android
- Android開發之呼叫攝像頭拍照Android
- 膝上型電腦攝像頭怎麼開啟 筆記本攝像頭設定在哪裡筆記