#这个应用中有多个项目
##1,仿ios给activity背景设置模糊度
##2,搜索关键字变红,指定字段变色
##3,Android图片滤镜,可以自定义任意效果
#一, BlurBehindActivity
仿ios给activity背景设置模糊度,可以设置任意透明度(只需要一行代码简单集成)
安卓模糊背景,半透明背景,任意透明度背景
#使用步骤,只需下面简单2步。
##1,把项目中的qclCopy文件夹里的类直接复制到你的项目就行
![image](https://github.com/qiushi123/BlurBehindActivity/blob/master/images_qcl/qcl.png?raw=true)
##2,完成好第一步就直接使用了
###比如你从MainActivity跳转到activity2
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.dummy_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
BlurBehind.getInstance().execute(MainActivity.this, new OnBlurCompleteListener() {
@Override
public void onBlurComplete() {
Intent intent = new Intent(MainActivity.this, MainActivity2.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);
}
});
}
});
}
}
###MainActivity2 只需要添加下面简单一行代码就可以设置模糊效果(也可以设置任意透明度)
public class MainActivity2 extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_blurred);
BlurBehind.getInstance()//在你需要添加模糊或者透明的背景中只需要设置这几行简单的代码就可以了
.withAlpha(50)
.withFilterColor(Color.parseColor("#0075c0"))
.setBackground(this);
}
}
#下面是效果图
![image](https://github.com/qiushi123/BlurBehindActivity/blob/master/images_qcl/blur-behind-before.png?raw=true) ![image](https://github.com/qiushi123/BlurBehindActivity/blob/master/images_qcl/blur-behind-after.png?raw=true)
#二, 搜索关键字变红,指定字段变色
有时候我们搜索中的关键字需要变红或者变为别的颜色,我自己重写了textview。使用起来特别方便
##使用步骤
1,把下面自定义的MyTextView 复制到项目中
import android.content.Context;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
import android.text.style.ForegroundColorSpan;
import android.util.AttributeSet;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
//制定字体变色,自定义textview
public class MyTextView extends TextView {
public MyTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public void setSpecifiedTextsColor(String text, String specifiedTexts, int color) {
List<Integer> sTextsStartList = new ArrayList<>();
int sTextLength = specifiedTexts.length();
String temp = text;
int lengthFront = 0;//记录被找出后前面的字段的长度
int start = -1;
do {
start = temp.indexOf(specifiedTexts);
if (start != -1) {
start = start + lengthFront;
sTextsStartList.add(start);
lengthFront = start + sTextLength;
temp = text.substring(lengthFront);
}
} while (start != -1);
SpannableStringBuilder styledText = new SpannableStringBuilder(text);
for (Integer i : sTextsStartList) {
styledText.setSpan(
new ForegroundColorSpan(color),
i,
i + sTextLength,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
setText(styledText);
}
}
2,使用只需要一行代码就可以完事
public class TextActivity04 extends Activity
{
private MyTextView textView;
public String result = "关键字变色,特别简单,只需要一行代码,就可以实现关键字变红";
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_04_layout);
textView = (MyTextView)findViewById(R.id.tv);
textView.setSpecifiedTextsColor(result, "关键字", Color.parseColor("#FF0000"));
/*
textView.setSpecifiedTextsColor(result, "关键字", Color.parseColor("#FF0000"))中result可以换成你的搜索结果
关键字直接换成你的EditText中输入的关键字就可以啦
*/
}
}
3,附加布局文件,特别简单
<com.huxiu.yd.viewmine.MyTextView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@id/image"
android:maxLines="2"
android:textColor="@color/gray5"
android:textSize="14dp"
tools:text="测试搜索结果标题" />
#下面是效果图
![image](http://img.my.csdn.net/uploads/201602/17/1455693257_3865.png)
#三,Android图片滤镜,可以自定义任意效果
对图像进行颜色方面的处理,通过使用颜色矩阵(ColorMatrix)来实现。从而可以达到很多特效如黑白老照片、泛黄旧照片等等。
##颜色矩阵(ColorMatrix)实现滤镜效果
###一,知识简介
一张位图可以转换为一个5*4的矩阵,涉及到颜色和透明度。如图1所示。在Android中,
颜色矩阵M是以一维数组m=[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t]的方式进行存储的。
在一张图片中,图像的RGBA(红色、绿色、蓝色、透明度)值决定了该图片所呈现出来的颜色效果。
要想改变一张图片的颜色效果,只需要改变图像的颜色分量矩阵即可。通过颜色矩阵可以很方便的修改图像的颜色分量矩阵。
由此可见,通过颜色矩阵修改了原图像的RGBA值,从而达到了改变图片颜色效果的目的。
并且,通过如图3所示的运算可知,颜色矩阵M的
第一行参数abcde决定了图像的红色成分,
第二行参数fghij决定了图像的绿色成分,
第三行参数klmno决定了图像的蓝色成分,
第四行参数pqrst决定了图像的透明度,
第五列参数ejot是颜色的偏移量。
通常,改变颜色分量时可以通过修改第5列的颜色偏移量来实现,
如图4所示的颜色矩阵M1,通过计算后可以得知该颜色矩阵的作用是使图像的红色分量和绿色分量均增加100,
这样的效果就是图片泛黄(因为红色与绿色混合后得到黄色)。
###二,以黑白效果为例(有两种实现方法)
1,用数组矩阵
float[] array = {1, 0, 0, 0, 100,
0, 1, 0, 0, 100,
0, 0, 1, 0, 0,
0, 0, 0, 1, 0};
ColorMatrix colorMatrix = new ColorMatrix(array);
2,把饱和度设置为0 就可以得到黑白的图片
ColorMatrix colorMatrix = new ColorMatrix();
colorMatrix.setSaturation(0);
====================实例代码========================================
package com.huxiu.yd.api.lib.filterAPI;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.ColorMatrix;
import android.graphics.ColorMatrixColorFilter;
import android.graphics.Paint;
public class GrayFilter {
// 黑白效果函数
public static Bitmap changeToGray(Bitmap bitmap) {
int width, height;
width = bitmap.getWidth();
height = bitmap.getHeight();
Bitmap grayBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
Canvas canvas = new Canvas(grayBitmap);
Paint paint = new Paint();
paint.setAntiAlias(true); // 设置抗锯齿
//一,数组�
没有合适的资源?快使用搜索试试~ 我知道了~
功能齐全的Android图片滤镜效果源码
共103个文件
java:33个
xml:29个
png:20个
3星 · 超过75%的资源 需积分: 50 43 下载量 89 浏览量
2017-05-09
23:25:33
上传
评论 1
收藏 3.58MB ZIP 举报
温馨提示
史上最全的Android图片滤镜 可自定义任意效果滤镜 &搜索关键字变红,变颜色,指定字段变色 &仿ios给activity背景设置模糊度,(只需要一行代码简单集成)安卓模糊背景,半透明背景,任意透明度背景
资源推荐
资源详情
资源评论
收起资源包目录
功能齐全的Android图片滤镜效果源码 (103个子文件)
app1.apk 1.78MB
gradlew.bat 2KB
.gitignore 97B
.gitignore 7B
build.gradle 755B
build.gradle 498B
settings.gradle 15B
gradlew 5KB
gradle-wrapper.jar 52KB
brokenview.jar 32KB
ListView3D.java 28KB
BrokenAnimator.java 21KB
MainActivity_Broken.java 13KB
ColorPhrase.java 11KB
Blur.java 6KB
Blur.java 6KB
MainActivity_Blur.java 6KB
MainActivity2.java 6KB
BrokenView.java 6KB
BrokenTouchListener.java 5KB
MainActivity3DListview.java 5KB
Dynamics.java 4KB
BlurBehind.java 4KB
BlurBehind.java 4KB
LinePath.java 4KB
MainActivity.java 2KB
MyView.java 2KB
Utils.java 2KB
MainActivityImgFliter.java 2KB
ColorView.java 2KB
MainActivityImgFliter_JuZhen.java 2KB
Piece.java 2KB
MyTextView.java 1KB
MyTextView.java 1KB
GrayFilter.java 1KB
MainActivityColor.java 1KB
MainActivitySearchTextColor.java 1KB
BrokenCallback.java 366B
ApplicationTest.java 343B
BrokenConfig.java 339B
ExampleUnitTest.java 305B
OnBlurCompleteListener.java 155B
OnBlurCompleteListener.java 155B
galata.jpg 195KB
img5.jpg 50KB
img4.jpg 40KB
img6.jpg 24KB
README.md 10KB
.name 8B
5_meitu_1.png 516KB
2015031808522296.png 283KB
blur-behind-before.png 240KB
blur-behind-after.png 131KB
blur-behind-after-alpha-color.png 130KB
img1.png 101KB
img3.png 88KB
img2.png 78KB
ic_launcher.png 10KB
qcl.png 8KB
ic_launcher.png 8KB
ic_launcher.png 5KB
toggle_btn_checked.png 4KB
ic_launcher.png 3KB
ic_launcher.png 3KB
contact_image.png 2KB
ic_launcher.png 2KB
refresh.png 1KB
toggle_btn_unchecked.png 759B
background.9.png 542B
proguard-rules.pro 660B
gradle.properties 855B
gradle-wrapper.properties 230B
搜索结果中关键字变红&变色.txt 3KB
使用步骤.txt 1KB
activity_main_broken.xml 8KB
activity_main7_imagefliter_juzhen.xml 6KB
activity_main.xml 3KB
misc.xml 3KB
styles.xml 2KB
AndroidManifest.xml 1KB
activity_main5_search_text_color.xml 1KB
activity_main_color.xml 1KB
activity_main6_imagefliter.xml 1KB
activity_main_blur.xml 1KB
strings.xml 960B
gradle.xml 817B
list_item.xml 783B
compiler.xml 686B
runConfigurations.xml 564B
activity_blurred.xml 545B
dimens.xml 358B
modules.xml 353B
activity_3d.xml 339B
main_menu.xml 319B
background_button.xml 301B
colors.xml 299B
array.xml 291B
toggle_button.xml 271B
demo_button.xml 248B
dimens.xml 211B
共 103 条
- 1
- 2
资源评论
- xuelongqy2018-05-29不错,很好用
- xmqqqq2017-06-20是不是缺少资源啊, bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.filter); 报错,没法运行
wxpdada
- 粉丝: 5
- 资源: 21
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功