• Stars
    star
    102
  • Rank 335,584 (Top 7 %)
  • Language
    Java
  • Created over 8 years ago
  • Updated over 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

一行代码实现Android 本地图片或者网络图片高斯模糊效果(毛玻璃效果)

BlurImageQcl

本地图片或者网络图片高斯模糊效果(毛玻璃效果)

#先看效果图 ##1,本地图片的高斯模糊 image

##2,网络图片的高斯模糊 image

#使用步骤

##一,实现本地图片或者网络图片的毛玻璃效果特别方便,只需要把下面的FastBlurUtil类复制到你的项目中就行

##二,==============使用实例代码================================================================= package com.testdemo;

import android.app.Activity;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;

import com.testdemo.blur_image_lib10.FastBlurUtil;

public class MainActivity10_BlurImage extends Activity {
	ImageView image;
	EditText edit;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main10_blur_image);
		image = (ImageView) findViewById(R.id.image);
		edit = (EditText) findViewById(R.id.edit);


		findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
				String pattern = edit.getText().toString();
				int scaleRatio = 0;
				if (TextUtils.isEmpty(pattern)) {
					scaleRatio = 0;
				} else if (scaleRatio < 0) {
					scaleRatio = 10;
				} else {
					scaleRatio = Integer.parseInt(pattern);
				}

				//        获取需要被模糊的原图bitmap
				Resources res = getResources();
				Bitmap scaledBitmap = BitmapFactory.decodeResource(res, R.drawable.filter);

				//        scaledBitmap为目标图像,10是缩放的倍数(越大模糊效果越高)
				Bitmap blurBitmap = FastBlurUtil.toBlur(scaledBitmap, scaleRatio);
				image.setScaleType(ImageView.ScaleType.CENTER_CROP);
				image.setImageBitmap(blurBitmap);
			}
		});

		findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
				//url为网络图片的url,10 是缩放的倍数(越大模糊效果越高)
				final String pattern = edit.getText().toString();

				final String url =
						//                        "http://imgs.duwu.me/duwu/doc/cover/201601/18/173040803962.jpg";
						"http://b.hiphotos.baidu.com/album/pic/item/caef76094b36acafe72d0e667cd98d1000e99c5f.jpg?psign=e72d0e667cd98d1001e93901213fb80e7aec54e737d1b867";
				new Thread(new Runnable() {
					@Override
					public void run() {
						int scaleRatio = 0;
						if (TextUtils.isEmpty(pattern)) {
							scaleRatio = 0;
						} else if (scaleRatio < 0) {
							scaleRatio = 10;
						} else {
							scaleRatio = Integer.parseInt(pattern);
						}
//                        下面的这个方法必须在子线程中执行
						final Bitmap blurBitmap2 = FastBlurUtil.GetUrlBitmap(url, scaleRatio);
						
//                        刷新ui必须在主线程中执行
						 APP.runOnUIThread(new Runnable() {//这个是我自己封装的在主线程中刷新ui的方法。
							@Override
							public void run() {
								image.setScaleType(ImageView.ScaleType.CENTER_CROP);
								image.setImageBitmap(blurBitmap2);

							}
						});
					}
				}).start();


			}
		});


	}

}

=========下面是上面的布局文件======================================================================
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
			  xmlns:tools="http://schemas.android.com/tools"
			  android:layout_width="match_parent"
			  android:layout_height="match_parent"
			  android:orientation="vertical">

	<ImageView
		android:id="@+id/image2"
		android:layout_width="match_parent"
		android:layout_height="220dp"
		android:background="@drawable/filter"/>

	<LinearLayout
		android:layout_width="match_parent"
		android:layout_height="wrap_content"
		android:orientation="horizontal">

		<EditText
			android:id="@+id/edit"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_marginTop="15dp"
			android:hint="输入模糊度"
			/>

		<Button
			android:id="@+id/button2"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:text="转化毛玻璃"/>

		<Button
			android:id="@+id/button"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_marginLeft="4dp"
			android:text="转化网络图片毛玻璃"/>
	</LinearLayout>

	<ImageView
		android:id="@+id/image"
		android:layout_width="match_parent"
		android:layout_height="220dp"
		android:layout_below="@+id/image2"
		/>


</LinearLayout>

##三,注意事项 1,一定不要忘记intent权限 2,加载网络图片时一定要在子线程中执行。

#我的个人博客

http://blog.csdn.net/qiushi_1990

More Repositories

1

xiaochengxu_demos

小程序优秀项目源码汇总,每个项目都有图有源码,零基础学微信小程序,小程序表格,小程序视频,小程序视频弹幕,小程序仿天猫大转盘抽奖等源码,小程序云开发,小程序发邮件,小程序支付,微信支付,持续更新。。。
JavaScript
1,439
star
2

GuideView-master

Android引导蒙层,安卓新手引导图,引导图层,支持椭圆,圆形,矩形多种形状,一行代码快速搞定新手引导视图,最最轻量级的新手引导库(只有1个类),能够快速的为一个Activity里的任何一个View控件创建一个遮罩式的导航页,支持单个页面,多个引导提示,
Java
551
star
3

VideoDemoQcl

安卓视频播放器 一行代码快速实现在线视频播放,Android视频播放,AndroidMP3播放,安卓视频播放一行代码搞定,仿今日头条 Android视频播放器
Java
301
star
4

BlurBehindActivity

史上最全的Android图片滤镜 可自定义任意效果滤镜 &搜索关键字变红,变颜色,指定字段变色 &仿ios给activity背景设置模糊度,(只需要一行代码简单集成)安卓模糊背景,半透明背景,任意透明度背景
Java
158
star
5

love

程序员表白神器。安卓程序员表白软件。程序员追女友利器=相爱天数计时器+雪花效果+彩色气泡+心形花园+心形玫瑰花
Java
109
star
6

TakePhoto_android7.0

安卓7.0拍照权限适配解决安卓本地图片选择或者拍照更换头像上传后台,
Java
68
star
7

AndroidtagView

Android 图片裁剪、滤镜,添加水印、标签。仿nice添加标签,有图文讲解
Java
54
star
8

randomlayout

安卓动画之随机摆放文字带飞入飞出效果
Java
50
star
9

AndroidPdfViewDowload

android显示PDF文件 ,自定义pdf显示控件,一行代码快速实现pdf下载与本地PDF快速预览,支持线上各种文件下载到本地
Java
47
star
10

wxapppush

5行代码实现微信小程序模版消息推送 (含推送后台和小程序源码)
Java
44
star
11

demo3

安卓常用项目大合集,雷达图,蜘蛛网图,楼层导航栏,海报分享,截取长图,图文混排,搜索关键字高亮显示,安卓view曝光量
Java
43
star
12

StickyNavListview-pulltoGridView

HeaderViewPager 这个项目是自定义的listview和gridview在上滑的同时,顶部的标题同时跟着滑动,具有共同头部的 ViewPager,支持与ListView,GridView,ScrollView,WebView,RecyclerView 嵌套使用
Java
39
star
13

cloud-pay

10行代码实现微信小程序支付,借助小程序云开发云函数实现微信支付
JavaScript
35
star
14

mblog

博客系统:web前端+管理后台+java源码
Java
29
star
15

CustomDialog

Android自定义弹窗,自定义dialog,自定义选择框。可以完全自定义你想要的任何布局,任何样式的Dialog
Java
26
star
16

FlowLayout-master

Android流式布局,支持单选、多选等,适合用于产品标签等,可以自定义标签颜色,标签大小,标签距离。
Java
25
star
17

timeline

利用小程序和小程序云开发模仿微信朋友圈,小程序发朋友圈效果
JavaScript
24
star
18

AutomaticUpdate

安卓自动更新,静默更新,替换友盟更新功能,可以在通知栏里显示更新下载进度,几行代码快速实现Android下载更新
Java
23
star
19

H5Demo

安卓webview html5 自动播放本地视频,网上视频,可以循环播放
JavaScript
21
star
20

QclGlide

Glide加载gif动图,Glide带加载动画(动画可以自定义)比imageloader更好用的安卓图片加载库
Java
19
star
21

H5Game

html5游戏 Android+html5实现类似连连看安卓游戏 安卓activity+webview+h5=2048程序员版 只有程序员才能玩的懂的2048升级版html离线小游戏 2048安卓程序员版 android2048
JavaScript
17
star
22

WebViewShareText

自定义webview的ActionMode Menu 仿好奇心日报重写安卓系统分享功能。webview与h5通过js交互获取网页中选中的文字内容
Java
15
star
23

TextViewDemo

安卓快速实现关键字变色,搜索字变红,点击字体打电话,textview斜体,电商价格删除线,绿色下划线,图片(表情,图文混排) textview超链接跳转
Java
13
star
24

AndFixDemo

android热修复,打补丁,不用发版本就能实时的解决一些bug
C++
11
star
25

cloud-email

微信小程序实现邮件发送,借助小程序云开发进行邮件验证码发送
JavaScript
10
star
26

flowLayout-Android

自定义流式布局实现文字和图片瀑布流效果
Java
10
star
27

NewsHotSift

安卓结合HTML5快速开发APP 和原生效果一样 WaveSwipeRefreshLayout实现微信热文精选,微信热文安卓app版,activity中viewpager套fragment
Java
10
star
28

androidApp

安卓前端+后台实现全栈开发,okhttp+rxjava+retrofit实现安卓app,springboot+jpa实现安卓后台
Java
9
star
29

weixin-xiaochengxu

微信小程序编程学习,一款专门学习微信小程序的小程序。有源码
JavaScript
8
star
30

sell

springboot实战入门,springboot+jpa实现java后台api接口 springboot点餐系统,免费在线api接口
JavaScript
8
star
31

springboot-demos

springboot学习demos springboot+vue实现一个前后端分离的完整项目,同时加深下springboot的学习
Java
7
star
32

ZDYlistView

滑动listview标题置顶,listview吸顶效果,安卓系统状态栏透明,有图有源码
Java
6
star
33

DragLayout-SlidingMenu

仿QQ5.0新特性-侧滑菜单-自定义侧滑面板控件
Java
5
star
34

weixin_sell

微信点餐系统
Java
4
star
35

webview-wechaht

微信小程序webview组件
JavaScript
3
star
36

wxapp-demos

微信小程序常用知识点学习汇总
JavaScript
3
star
37

blog3

springboot2+es+jpa+bootstrap实现博客系统
JavaScript
2
star
38

QCLAutoCycleView

一行代码快速实现今日头条 网易新闻焦点图自动循环轮播效果
Java
2
star
39

mybatis-druid

java+spring常用知识点总结与学习实例,通过实例代码快速掌握spring常用知识点
Java
2
star
40

wuyehoutai2

安卓app对应的java后台
Java
1
star
41

thinkphp5

学习thinkphp5,使用tp5+小程序构建一个全栈项目
PHP
1
star
42

PHPframework

从零开始搭建自己的php框架
PHP
1
star
43

vue0118

vue知识点
Vue
1
star
44

wechatgame-webstorm

用webstorm开发微信小程序,小游戏
JavaScript
1
star
45

Qcl

自己的安卓项目,后台是php,用的阿里云,数据用Python爬虫抓取
Java
1
star
46

spring-boot-docker

springboot学习demo,docker学习demo
HTML
1
star
47

KotlinDemo

用kotlin开发简单入门级安卓项目
Java
1
star
48

freemarker

springboot+freemarker+bootstrap快速实现管理后台,包含分页功能等
JavaScript
1
star