Android實(shí)現(xiàn)圓角圖片
本文實(shí)例為大家分享了Android實(shí)現(xiàn)圓角圖片的具體代碼,供大家參考,具體內(nèi)容如下
效果圖:
快速開(kāi)始
activity_main.xml文件:
<?xml version='1.0' encoding='utf-8'?><android.support.constraint.ConstraintLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' tools:context='.MainActivity'> <ImageView android: android:layout_width='300dp' android:layout_height='200dp' android:layout_marginTop='30dp' android:src='http://m.propowerdrill.cn/bcjs/@mipmap/image_bg' app:layout_constraintRight_toRightOf='parent' app:layout_constraintLeft_toLeftOf='parent' app:layout_constraintTop_toTopOf='parent'/> <ImageView android: android:layout_width='300dp' android:layout_height='200dp' android:layout_marginTop='30dp' app:layout_constraintRight_toRightOf='parent' app:layout_constraintLeft_toLeftOf='parent' app:layout_constraintTop_toBottomOf='@id/iv_img'/> <ImageView android: android:layout_width='200dp' android:layout_height='200dp' android:layout_marginTop='30dp' app:layout_constraintLeft_toLeftOf='parent' app:layout_constraintRight_toRightOf='parent' app:layout_constraintTop_toBottomOf='@id/iv_rect_img'/></android.support.constraint.ConstraintLayout>
MainActivity.class文件:
public class MainActivity extends AppCompatActivity { private ImageView ivRectImg, ivCircleImg; private Bitmap bitmap; private int width; private int height; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ivRectImg = findViewById(R.id.iv_rect_img); ivCircleImg = findViewById(R.id.iv_circle_img); bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.image_bg); width = bitmap.getWidth(); height = bitmap.getHeight(); rectRoundBitmap(); circleBitmap(); } // 圓角矩形 private void rectRoundBitmap() { RoundedBitmapDrawable bitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), bitmap); bitmapDrawable.setAntiAlias(true); bitmapDrawable.setCornerRadius(50); ivRectImg.setImageDrawable(bitmapDrawable); } // 把bitmap圖片進(jìn)行剪切成正方形, 然后再設(shè)置圓角半徑為正方形邊長(zhǎng)的一半即可 private void circleBitmap() { Bitmap circle = null; int min = Math.min(width, height); int max = Math.max(width, height); if (width == height) { circle = Bitmap.createBitmap(bitmap, 0, 0, width, height); } else { // 居中裁剪 if (width > height) {circle = Bitmap.createBitmap(bitmap, (max - min) / 2, 0, min, min); } else {circle = Bitmap.createBitmap(bitmap, 0, (max - min) / 2, min, min); } } RoundedBitmapDrawable bitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), circle); bitmapDrawable.setCornerRadius(min / 2); bitmapDrawable.setAntiAlias(true); ivCircleImg.setImageDrawable(bitmapDrawable); }}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Vue實(shí)現(xiàn)div滾輪放大縮小2. Android中的緩存3. Android實(shí)現(xiàn)動(dòng)態(tài)改變shape.xml中圖形的顏色4. PHP擴(kuò)展之APC——Alternative PHP Cache(可選PHP緩存)5. APP啟動(dòng)慢怎么辦,Android官方這樣說(shuō)6. vue實(shí)現(xiàn)自定義多選按鈕7. android RecycleView實(shí)現(xiàn)多級(jí)樹(shù)形列表8. vue項(xiàng)目中自定義video視頻控制條的實(shí)現(xiàn)代碼9. 在Vue中創(chuàng)建可重用的 Transition的方法10. Vue 3.0 全家桶搶先體驗(yàn)
