`
lifeijiyuan
  • 浏览: 40156 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

圆角图片的处理和圆角按钮的动画

 
阅读更多
/**
         * 把图片变成圆角
         * @param bitmap 需要修改的图片
         * @param pixels 圆角的弧度
         * @return 圆角图片
         */
        public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) {
   
            Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888);
            Canvas canvas = new Canvas(output);
   
            final int color = 0xff424242;
            final Paint paint = new Paint();
            final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
            final RectF rectF = new RectF(rect);
            final float roundPx = pixels;
   
            paint.setAntiAlias(true);
            canvas.drawARGB(0, 0, 0, 0);
            paint.setColor(color);
            canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
   
            paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
            canvas.drawBitmap(bitmap, rect, rect, paint);
   
            return output;
        }
===================================================================
/**
  * 将图片设置为圆角
  */
public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) {
  Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
  bitmap.getHeight(), Config.ARGB_8888);
  Canvas canvas = new Canvas(output);
  final int color = 0xff424242;
  final Paint paint = new Paint();
  final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
  final RectF rectF = new RectF(rect);
  final float roundPx = pixels;
  paint.setAntiAlias(true);
  canvas.drawARGB(0, 0, 0, 0);
  paint.setColor(color);
  canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
  paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
  canvas.drawBitmap(bitmap, rect, rect, paint);
  return output;
}
复制代码
当我们需要圆角的时候,调用这个方法,第一个参数是传入需要转化成圆角的图片,第二个参数是圆角的度数,数值越大,圆角越大

下面举个例子,有一个LinearLayout,想把它的背景图片设置成圆角

布局文件main.xml

1.<?xml version="1.0" encoding="utf-8"?>

2.<LinearLayout

3. xmlns:android="http://schemas.android.com/apk/res/android"

4. android:id="@+id/layout" android:orientation="vertical"

5. android:layout_width="wrap_content"

6. android:layout_height="wrap_content">

7.</LinearLayout>
.mInflater = LayoutInflater.from(this);



Drawable drawable = getResources().getDrawable(R.drawable.icon);

BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;

Bitmap bitmap = bitmapDrawable.getBitmap();


View view = mInflater.inflate(

R.layout.share_xiaohua_revert_lv_item_top, null);

ImageView mImageView = (ImageView) view

.findViewById(R.id.lv_xiaohua_image);

mImageView.setImageBitmap(toRoundCorner(bitmap, 30));
分享到:
评论

相关推荐

    Qt圆角功能和状态组合按钮,可以显示颜色或者图片

    在Qt编程中,圆角按钮和状态组合按钮是常见的用户界面元素,它们为应用程序提供了美观且功能丰富的交互体验。本文将深入探讨如何在Qt中实现圆角功能以及状态组合按钮,同时展示如何在按钮上显示颜色或图片。 首先,...

    圆角的图片按钮样式表含CSS,漂亮的按钮

    本项目提供了一种使用CSS实现的圆角图片按钮的样式表,旨在创造美观、大方的设计效果。下面我们将深入探讨如何通过CSS实现这样的按钮,并结合提供的资源文件进行应用。 首先,CSS(层叠样式表)是网页设计中用于...

    jQuery简单实用圆角分页按钮样式代码

    - `images`:这个文件夹可能包含分页按钮的图标或背景图片,用于增强视觉效果。例如,上一页、下一页的箭头图标,或者分隔符。 - `js`:这个文件夹内可能包含分页插件的主要JavaScript代码。这里可能有单独的jQuery...

    挂牌式图片上下翻页广告 JS 圆角图片轮播

    "挂牌式图片上下翻页广告 JS 圆角图片轮播"是一种利用JavaScript实现的动态广告展示方式,它模仿了新浪等大型网站的广告样式,既美观又实用。这种技术允许开发者轻松自定义广告图片,为用户提供一个流畅且互动的浏览...

    纯代码绘制特效动画按钮源码20130716

    【纯代码绘制特效动画按钮源码】是一种编程技术,它允许开发者通过编写代码来创建具有动态效果和视觉吸引力的按钮,而不是依赖于预定义的图片或图形资源。这个技术主要应用于用户界面(UI)设计,特别是在移动应用和...

    jquery+css3圆角动画导航

    本示例“jquery+css3圆角动画导航”利用了JavaScript库jQuery和CSS3的新特性,为网页创建了一个具有动态效果的圆角导航菜单。下面将详细介绍如何实现这一功能。 首先,CSS3提供了许多新的样式规则,其中圆角边框...

    五屏Flash圆角图片切换效果.rar

    这种效果通过Flash技术实现,Flash在早期的网页设计中扮演了重要角色,提供了丰富的动画和交互功能。在本案例中,"五屏"指的是可以同时展示五张图片的轮播效果,每张图片都有圆角处理,增加了设计的精致感。 Flash...

    纯css3带动画效果的左右滑动按钮

    【纯css3带动画效果的左右滑动按钮】是一种利用CSS3特性实现的交互式设计,主要用于创建具有平滑动画和视觉吸引力的开关按钮。在现代网页设计中,这种按钮常用于用户界面,如设置选项、开启/关闭功能等。CSS3作为...

    手机右上角圆角动画导航代码,点击左上角图片可以查看导航菜单

    在Android和iOS等操作系统中,设计师通常会使用圆角来美化按钮、卡片或者导航栏等组件。而“动画”则是指元素在屏幕上的动态变化,它可以增加用户的沉浸感和互动性。例如,当用户点击左上角的图片时,导航菜单可能会...

    图片框模拟超级按钮.rar

    "图片框模拟超级按钮"是一种创新的设计方法,它利用图片框控件来实现类似超级按钮的效果,使得用户界面更加生动和吸引人。在Windows编程,尤其是易语言这种面向初学者的编程环境中,这种技术尤为实用。 易语言是...

    An动画基础之按钮动画与基础代码相结合

    An动画基础之按钮动画与基础代码相结合 在本节中,我们将学习如何使用 An 软件创建按钮动画,并将其与基础代码相结合。我们将一步步地学习如何创建按钮,制作按钮动画,并将其与 AS 代码相结合,以实现更加复杂的...

    按钮圆角设计

    当然,实际项目中可能会根据需求动态改变圆角大小、颜色等属性,或者实现更复杂的交互效果,如动画和阴影。但基础的圆角按钮设计和应用,就是通过XML资源定义形状或使用预设图片来实现的。 总的来说,按钮的圆角...

    清爽简洁的滑雪运动企业网站模板-清爽 简洁 滑雪 运动 卡通 圆角 按钮 动画 企业 整站 漂亮 精品.rar

    4. **圆角按钮**:圆角按钮相比直角,给人更柔和、友好的感觉,同时符合现代设计趋势。它们在界面中起到引导用户操作的作用,如注册、预订、联系我们等。 5. **动画效果**:动态元素可以增加互动性,提升用户体验。...

    自定义Drawable 实现图片圆角、圆形、椭圆形

    实现图片圆角的Drawable,通常我们会创建一个继承自`RectShape`的自定义类,例如`RoundCornerDrawable`。在这个类中,我们需要重写`draw()`方法,使用`Canvas`的`drawRoundRect()`来绘制带圆角的矩形。圆角的半径...

    简洁圆角按钮产品企业网站模板-简洁 产品 展示 按钮 绿色 软件 企业.rar

    该压缩包文件“简洁圆角按钮产品企业网站模板-简洁 产品 展示 按钮 绿色 软件 企业.rar”提供了一套适用于软件企业的网站模板,其设计风格以简洁和绿色为主题,重点突出了产品展示和用户交互的圆角按钮元素。...

    jQuery简单实用圆角分页按钮样式代码.zip

    本篇文章将详细介绍如何利用jQuery实现简单圆角分页按钮的样式,并探讨其背后的原理和代码结构。 首先,我们需要了解jQuery的基本用法。jQuery通过简洁的语法降低了JavaScript的复杂性,如选择器(selectors)、...

    我的圆角样式

    3. **圆角图片**:利用`border-radius`可以创建“圆形图片”,只需将图片元素的宽度和高度设为相同,并设置较大的`border-radius`。 4. **兼容性问题**:CSS3的`border-radius`在现代浏览器中广泛支持,但在一些旧...

    用js实现css3效果的圆角方法

    在CSS3之前,我们通常需要使用图片或者复杂的CSS hack来实现圆角,但这些方法往往效率低下且维护困难。随着CSS3的普及,我们可以直接通过CSS的`border-radius`属性轻松实现圆角效果。然而,有些浏览器可能不支持CSS3...

    ios应用源码之多种颜色和样式的按钮(未使用图片作背景的) 2018127

    - `addTarget:action:forControlEvents:`:用于设置按钮事件的监听者和处理方法,例如点击按钮时执行的代码。 6. 按钮状态: - UIControlStateNormal:默认状态。 - UIControlStateHighlighted:当用户触摸按钮...

    易语言圆形按纽

    在实际开发过程中,我们可能会遇到各种问题,例如按钮的圆角处理、自适应大小、动画效果等。这些问题都需要我们深入理解和熟练运用易语言提供的图形界面和事件处理机制。只有不断实践和学习,才能更好地掌握易语言...

Global site tag (gtag.js) - Google Analytics