广告
返回顶部
首页 > 资讯 > 精选 >Android自定义Drawable实现圆角效果
  • 543
分享到

Android自定义Drawable实现圆角效果

drawable圆角roi 2023-05-30 21:05:23 543人浏览 独家记忆
摘要

Drawable是一种可绘制资源的载体,如图形、图像等。在实际开发中可以作为view的背景。主要有静态和动态两种方式,静态通过xml描述使用,动态即自定义Drawable。本文实现一个圆形和圆角的背景图片效果。效果图:实现方式:初始化一个B

Drawable是一种可绘制资源的载体,如图形、图像等。在实际开发中可以作为view的背景。主要有静态和动态两种方式,静态通过xml描述使用,动态即自定义Drawable。本文实现一个圆形和圆角的背景图片效果。

效果图:

Android自定义Drawable实现圆角效果

实现方式:

初始化一个BitmapShader着色器对象;
2.将着色器对象set给画笔;
3.在画布上绘制圆或圆角即可;
4.使用,view.setBackgroundDrawable
或者 ImageView.setImageDrawable

package com.mydrawable.musk;import Android.graphics.Bitmap;import android.graphics.BitmapShader;import android.graphics.canvas;import android.graphics.ColorFilter;import android.graphics.Paint;import android.graphics.PixelFORMat;import android.graphics.Shader;import android.graphics.drawable.Drawable;public class CircleDrawable extends Drawable { private Paint mPaint; private int mWidth; private Bitmap mBitmap; public CircleDrawable(Bitmap bitmap) { mBitmap = bitmap; //着色器,设置横向和纵向的着色模式为平铺 BitmapShader bitmapShader = new BitmapShader(mBitmap,  Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); mPaint = new Paint(); mPaint.setAntiAlias(true); mPaint.setDither(true); mPaint.setShader(bitmapShader); mWidth = Math.min(mBitmap.getWidth(), mBitmap.getHeight()); } //绘制 @Override public void draw(Canvas canvas) { canvas.drawCircle(mWidth / 2, mWidth / 2, mWidth / 2, mPaint); } //设置透明度值 @Override public void setAlpha(int alpha) { mPaint.setAlpha(alpha); } //设置颜色过滤器 @Override public void setColorFilter(ColorFilter colorFilter) { mPaint.setColorFilter(colorFilter); } //返回不透明度 @Override public int getOpacity() { return PixelFormat.TRANSLUCENT; } //返回图片实际的宽高 @Override public int getIntrinsicWidth() { return mWidth; } @Override public int getIntrinsicHeight() { return mWidth; }}

--结束END--

本文标题: Android自定义Drawable实现圆角效果

本文链接: https://www.lsjlt.com/news/221379.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android自定义Drawable实现圆角效果
    Drawable是一种可绘制资源的载体,如图形、图像等。在实际开发中可以作为view的背景。主要有静态和动态两种方式,静态通过xml描述使用,动态即自定义Drawable。本文实现一个圆形和圆角的背景图片效果。效果图:实现方式:初始化一个B...
    99+
    2023-05-30
    drawable 圆角 roi
  • Android自定义Drawable实现圆形和圆角
    本文实例为大家分享了自定义Drawable实现圆形和圆角的具体代码,供大家参考,具体内容如下圆形package com.customview.widget;import android.graphics.Bitmap;import andr...
    99+
    2023-05-30
    android drawable 圆形
  • Android之自定义View实现带4圆角或者2圆角的效果
    1 问题 实现任意view经过自定义带4圆角或者2圆角的效果 2 原理 1) 实现view 4圆角 我们只需要把左边的图嵌入到右边里面去,最终显示左边的图就行。 2) 实现v...
    99+
    2022-06-06
    view 自定义view Android
  • android 自定义圆角button效果的实例代码(自定义view Demo)
    概述 在平时开发过程中经常会碰到需要使用圆角button的情况,一般也会包括很多其他小功能,比如要在里面添加img,设置不同的圆角大小等。 针对这样的场景,直接使用创建多个s...
    99+
    2022-06-06
    button 自定义 view demo 自定义view Android
  • Android自定义圆角ImageView
    废话不多说了,直接给大家贴代码了。 java类如下: import android.content.Context; import android.content.res...
    99+
    2022-06-06
    Android
  • Android自定义view实现半圆环效果
    本文实例为大家分享了Android自定义view实现半圆环的具体代码,供大家参考,具体内容如下 1.自定义属性 <declare-styleable name="Semicir...
    99+
    2022-11-13
  • Android自定义View实现圆环交替效果
    下面请先看效果图:    看上去是不很炫的样子,它的实现上也不是很复杂,重点在与onDraw()方法的绘制。 首先是我们的attrs文件: <?xml ver...
    99+
    2022-06-06
    view Android
  • Android如何实现自定义view画圆效果
    这篇文章主要介绍了Android如何实现自定义view画圆效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。看图代码:package sjx.com.custonv...
    99+
    2023-05-30
    android view
  • Android如何自定义view实现半圆环效果
    小编给大家分享一下Android如何自定义view实现半圆环效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体内容如下1.自定义属性<declare-s...
    99+
    2023-06-29
  • Android自定义view实现圆环进度条效果
    本文实例为大家分享了Android自定义view实现圆环进度条效果的具体代码,供大家参考,具体内容如下 一、实现效果图 二、核心代码 自定义view的属性 <xml vers...
    99+
    2022-11-13
  • Android自定义view实现圆形进度条效果
    Android中实现进度条有很多种方式,自定义进度条一般是继承progressBar或继承view来实现,本篇中讲解的是第二种方式。 先上效果图: 实现圆形进度条总体来说并不难,还...
    99+
    2022-11-13
  • Android自定义圆角柱状图
    本文实例为大家分享了Android自定义圆角柱状图的具体代码,供大家参考,具体内容如下 需求: 画一个圆角柱状图,显示12个月的数据,Y轴数据动态分割,如果是当前月,就画出当前月图片...
    99+
    2022-11-13
  • Android自定义控件之圆形/圆角的实现代码
    一、问题在哪里? 问题来源于app开发中一个很常见的场景——用户头像要展示成圆的:  二、怎么搞? 机智的我,第一想法就是,切一张中间圆形透明、四周与底色相同、尺寸...
    99+
    2022-06-06
    Android
  • Android自定义控件之圆形、圆角ImageView
    一、问题在哪里? 问题来源于app开发中一个很常见的场景——用户头像要展示成圆的:  二、怎么搞? 机智的我,第一想法就是,切一张中间圆形透明、四周与底色相同、尺...
    99+
    2022-06-06
    Android
  • Android自定义圆形进度条效果
    本文实例为大家分享了Android自定义圆形进度条效果的具体代码,供大家参考,具体内容如下 1 控件 RoundProgress package listview.tianhet...
    99+
    2022-11-12
  • Android自定义View实现简单的圆形Progress效果
    先给大家展示下效果图,如果感觉不错,请参考实现思路: 我们要实现一个自定义的再一个圆形中绘制一个弧形的自定义View,思路是这样的:   先要创建一个类ProgressVie...
    99+
    2022-06-06
    view progress Android
  • Android怎么自定义View实现圆弧进度效果
    这篇文章主要介绍“Android怎么自定义View实现圆弧进度效果”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Android怎么自定义View实现圆弧进度效果”文章能帮助大家解决问题。技术实现Ar...
    99+
    2023-07-06
  • 基于Android实现ListView圆角效果
    本文演示如何在Android中实现ListView圆角效果。 无论是网站,还是APP,人们都爱看一些新颖的视图效果。直角看多了,就想看看圆角,这几年刮起了一阵阵的圆角设计风:C...
    99+
    2022-06-06
    listview Android
  • Android布局实现圆角边框效果
    首先,在res下面新建一个文件夹drawable,在drawable下面新建三个xml文件:shape_corner_down.xml、shape_corner_up.xml和...
    99+
    2022-06-06
    android布局 Android
  • Android如何自定义圆角柱状图
    这篇文章主要为大家展示了“Android如何自定义圆角柱状图”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Android如何自定义圆角柱状图”这篇文章吧。具体内容如下需求:画一个圆角柱状图,显示...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作