Android 如何隐藏光晕效果?
辉光效果很好。我的疑问是如何隐藏辉光效果?如果我单击我的imageview,那时候我只想显示我的发光效果,请告诉我如何在单击时隐藏和显示发光效果 代码: 当前屏幕截图:Android 如何隐藏光晕效果?,android,onclick,imageview,glow,Android,Onclick,Imageview,Glow,辉光效果很好。我的疑问是如何隐藏辉光效果?如果我单击我的imageview,那时候我只想显示我的发光效果,请告诉我如何在单击时隐藏和显示发光效果 代码: 当前屏幕截图: 一个更简单的方法是使用 创建两个图像-一个用于正常状态,一个用于按下状态(带辉光)。在res/drawable/button_drawable.xml中使用此选项: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://sc
一个更简单的方法是使用 创建两个图像-一个用于正常状态,一个用于按下状态(带辉光)。在res/drawable/button_drawable.xml中使用此选项:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/image_normal"
android:state_enabled="true"/>
<item
android:drawable="@drawable/image_pressed"
android:state_pressed="true"/>
</selector>
更简单的方法是使用 创建两个图像-一个用于正常状态,一个用于按下状态(带辉光)。在res/drawable/button_drawable.xml中使用此选项:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/image_normal"
android:state_enabled="true"/>
<item
android:drawable="@drawable/image_pressed"
android:state_pressed="true"/>
</selector>
您可以这样为
setMaskFilter()
设置null
paint.setMaskFilter(null);
您只需设置paint.setMaskFilter(新的BlurMaskFilter(glowRadius,Blur.OUTER))代码>
为此,您需要将绘制对象保留在应用程序范围内,以便此绘制对象可以在其他类或活动中访问到任何您想要的位置,或者您可以将标志设置为true,然后显示发光效果和false该标志设置为nothing(默认设置)您可以通过这种方式将setMaskFilter()
设置为null
paint.setMaskFilter(null);
您只需设置paint.setMaskFilter(新的BlurMaskFilter(glowRadius,Blur.OUTER))代码>
为此,您需要将绘制对象保留在应用程序范围内,以便此绘制对象可以在其他类或活动中访问到您想要的任何位置,或者您可以将标志设置为true,然后显示发光效果和false该标志设置为nothing(默认设置)设置onclicklistener并实现以下代码:
.setOnClickListener(clicklistener);
private OnClickListener backListener = new OnClickListener() {
public void onClick(View v) {
// An added margin to the initial image
int margin = 24;
int halfMargin = margin / 2;
// the glow radius
int glowRadius = 16;
// the glow color
int glowColor = Color.rgb(0, 192, 255);
// The original image to use
Bitmap src = BitmapFactory.decodeResource(getResources(),
R.drawable.test);
// extract the alpha from the source image
Bitmap alpha = src.extractAlpha();
// The output bitmap (with the icon + glow)
Bitmap bmp = Bitmap.createBitmap(src.getWidth() + margin,
src.getHeight() + margin, Bitmap.Config.ARGB_8888);
// The canvas to paint on the image
Canvas canvas = new Canvas(bmp);
Paint paint = new Paint();
paint.setColor(glowColor);
// outer glow
paint.setMaskFilter(new BlurMaskFilter(glowRadius, Blur.OUTER));
canvas.drawBitmap(alpha, halfMargin, halfMargin, paint);
// original icon
canvas.drawBitmap(src, halfMargin, halfMargin, null);
}}
设置onclicklistener并实现以下代码:
.setOnClickListener(clicklistener);
private OnClickListener backListener = new OnClickListener() {
public void onClick(View v) {
// An added margin to the initial image
int margin = 24;
int halfMargin = margin / 2;
// the glow radius
int glowRadius = 16;
// the glow color
int glowColor = Color.rgb(0, 192, 255);
// The original image to use
Bitmap src = BitmapFactory.decodeResource(getResources(),
R.drawable.test);
// extract the alpha from the source image
Bitmap alpha = src.extractAlpha();
// The output bitmap (with the icon + glow)
Bitmap bmp = Bitmap.createBitmap(src.getWidth() + margin,
src.getHeight() + margin, Bitmap.Config.ARGB_8888);
// The canvas to paint on the image
Canvas canvas = new Canvas(bmp);
Paint paint = new Paint();
paint.setColor(glowColor);
// outer glow
paint.setMaskFilter(new BlurMaskFilter(glowRadius, Blur.OUTER));
canvas.drawBitmap(alpha, halfMargin, halfMargin, paint);
// original icon
canvas.drawBitmap(src, halfMargin, halfMargin, null);
}}
android:drawable=“@drawable/image\u normal”,android:drawable=“@drawable/image\u pressed”错误如上所述,创建这些图像(image\u normal.png和image\u pressed.png)并添加到您的drawable文件夹中。请注意更新的XML。类型ImageView中的方法setImageDrawable(Drawable)不适用于参数(int)错误行:((ImageView)findViewById(R.id.bmpImg)).setImageDrawable(R.Drawable.button_Drawable);请参阅更新的代码:((ImageView)findViewById(R.id.bmpImg)).setImageDrawable(getResources().getDrawable(R.drawable.button_drawable))代码>android:drawable=“@drawable/image\u normal”,android:drawable=“@drawable/image\u pressed”错误如上所述,创建这些图像(image\u normal.png和image\u pressed.png)并添加到您的drawable文件夹中。请注意更新的XML。类型ImageView中的方法setImageDrawable(Drawable)不适用于参数(int)错误行:((ImageView)findViewById(R.id.bmpImg)).setImageDrawable(R.Drawable.button_Drawable);请参阅更新的代码:((ImageView)findViewById(R.id.bmpImg)).setImageDrawable(getResources().getDrawable(R.drawable.button_drawable))代码>谢谢,还有一个疑问是如何在我的图像视图中使用onclick事件谢谢,还有一个疑问是如何在我的图像视图中使用onclick事件是什么?R.id.bmpImg。你想描述一下最后一行吗@海德先生,没什么,我的布局中有imageview,所以我通过id使用imageview。仅此而已。这是另一种格式,您可以同时使用这两种格式1。ImageView img=(ImageView)findViewById(R.id.bmpImg);2.img.setImageBitmap(bmp);这是怎么一回事?R.id.bmpImg。你想描述一下最后一行吗@海德先生,没什么,我的布局中有imageview,所以我通过id使用imageview。仅此而已。这是另一种格式,您可以同时使用这两种格式1。ImageView img=(ImageView)findViewById(R.id.bmpImg);2.img.setImageBitmap(bmp);