android 清理画布canvas后 背景变黑色 可以设置颜色 但不能变得透明了 怎么才能变透明?

我分别用下面两个方法清理画布
1、
canvas.drawColor(colorAlpha, PorterDuff.Mode.CLEAR);
2、
Paint p = new Paint();
// //清屏
// p.setXfermode(new PorterDuffXfermode(Mode.CLEAR));
// canvas.drawPaint(p);
// p.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));

背景变成黑色 怎么回到透明

3个回答

解决了吗?我也遇到这个问题

您好,解决了吗? 我现在也遇到了相同的问题。我的自定义的控件时自己画的。但要让控件无痕的切入布局中,怎么让自定义的控件变为完全透明呢?

背景:#00000000

cyxevil
cyxevil 回复靠谱青年12306: 画布可以有三种方式设背景,有代码设背景的方式,你换个方式试试。 要是还不行我就不知道了,不然你换成白色
3 年多之前 回复
qq136490497
啸鳯 这个 真不行 背景是在画布上面的
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
android自定义控件画布canvas背景色失效变黑色
错误示范: ***************************************************************************************************************************************************************************************** 页面
Canvas清理画布
清理画布 第一种方式:canvas.drawColor(colorAlpha, PorterDuff.Mode.CLEAR); 第二种方式: Paint p = new Paint(); p.setXfermode(new PorterDuffXfermode(Mode.CLEAR)); canvas.drawPaint(p); p.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); 这两
怎么把Canvas的背景设置为透明
我现在有两个画布,一个画布用作背景图,一个画布上面放置游戏人物图片,但是现在把这两个画布都添加到JFrame上面去只能显示一个画布,怎么设置画布才能既看到背景图又看到人物图
对话框加载图片后多余部分怎么变透明了?
BITMAP bm; rn CDC dcMem; rn dcMem.CreateCompatibleDC(pDC); rn m_pbmp = new CBitmap(); rn m_pbmp->LoadBitmap(IDB_BITMAP1); rn rn CBitmap *pBmpOld=(CBitmap *)dcMem.SelectObject(m_pbmp); rn m_pbmp->GetObject(sizeof(bm),(LPVOID)&bm); rn CRect rcClient; rn GetClientRect(rcClient); rn rn pDC->BitBlt(0,0,bm.bmWidth, rn bm.bmHeight, rn &dcMem, rn 0,0, rn SRCCOPY); rn rn dcMem.SelectObject(pBmpOld); rn return TRUE;rn运行后踱出来的对话框部分怎么变透明了?
Android中SurfaceView设置背景为透明-Canvas透明清除
创建时: SurfaceView.setZOrderOnTop(true); SurfaceHolder.setFormat(PixelFormat.TRANSLUCENT); 描画时: Canvas.drawColor(Color.TRANSPARENT,Mode.CLEAR);  
画布的背景为什么始终是黑色?
用c语言编程、画图,VS环境。想画出一个图形,并希望其背景为白色。rn但是,程序运行后,画出的图形的背景为黑色,再按回车键后,出现背景为白色的屏幕,再按回车键,屏幕消失。rn我的程序是哪里出错了?应该如何修改?rn我先后用了setbkcolor()和system("color F0"),都不成功。程序的结果仅仅是背景不符合要求。rn非常感谢。rn
窗口背景变黑色了?
在窗口OnPaint()中rnmemdc.CreateCompatibleDC(&dc);rnbt.CreateCompatibleBitmap(&dc,ort.Width(),ort.Height());rnopbt = memdc.SelectObject(&bt);rnmemdc.Draw3dRect(rt,RGB(50,100,200),RGB(50,100,200));rndc.BitBlt(ort.left,ort.top,ort.Width(),ort.Height(),&memdc,0,0,SRCCOPY);rnmemdc.SelectObject(opbt);rn显示时窗口背景色是黑的,但矩形有画出来,是什么原因
Canvas入门(2)——清理画布
Canvas清理画布有一下几种 1.canvas每当高度或宽度被重设时,画布内容就会被清空: function clearCanvas() { //获取指定Canvas元素 var c=document.getElementById("Canvas"); var cxt=c.getContext("2d"); c.height=c.height; ...
用surfaceView和mediaPlayer播放视频,背景变透明了
[size=18px]如题,只有播放那种只有声音没有图像的视频格式文件(比如把mp3转格式到mp4的这种文件)才会出现。rn将surfaceView控件的父控件设为黑色背景,但是播放的时候变透明了,surface播放视频要自身透明,而这种视频没有画面所以直接透到了主页,把主页显示出来了,其余的点击、触摸事件都正常,这是怎么回事?rnrn我试过用setZOrderOnTop(true)方法将surface放到最上面,用setZOrderMediaOverlay(false)方法取消,播放视频正常,但是切换到正常视频之后setZOrderMediaOverlay(false)不起效果,别的控件不能用。rnrn[/size]rn[size=24px]求大神帮帮忙![/size]
TreeView运行后透明了……
RT,透明之后可以看到后面的物体,看到桌面上的还可以点……晕,这是咋回事啊...
asp.net 图片压缩后背景变黑色问题
从网上抓来一些代码,效果不错,可是压缩后图片被来的透明背景却变黑色的了 。rn高手帮帮忙丫~~ 万分感激 !rn[code=csharp]rnprivate System.Drawing.Imaging.ImageCodecInfo GetEncoderInfo(string mimeType)rnrn System.Drawing.Imaging.ImageCodecInfo result = null;rn rn System.Drawing.Imaging.ImageCodecInfo[] encoders =rn System.Drawing.Imaging.ImageCodecInfo.GetImageEncoders();rn for (int i = 0; i < encoders.Length; i++)rn rn if (encoders[i].MimeType == mimeType)rn rn result = encoders[i];rn break;rn rn rn return result;rn[/code]rnrn[code=csharp]System.Drawing.Bitmap img = new System.Drawing.Bitmap("C:\\source.jpg"); rn//System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(img);rnrnrnSystem.Drawing.Imaging.ImageCodecInfo encoder = GetEncoderInfo("image/jpeg");rnif (encoder != null)rnrn System.Drawing.Imaging.EncoderParameters encoderParams =rn new System.Drawing.Imaging.EncoderParameters(1); rn rn encoderParams.Param[0] =rn new System.Drawing.Imaging.EncoderParameter(System.Drawing.Imaging.Encoder.Quality, (long)60);rn rn img.Save("C:\\destination.jpg", encoder, encoderParams);rn rn encoderParams.Dispose();rnrnrnrn//graphics.Dispose();rnimg.Dispose();[/code]
怪事!透明对话框程序突然不能透明了!
一月前尝试用设置窗口区域方法编了一不规则透明窗口程序,一直运行良好,但前天由于图形处理的需要安装了一些图形处理软件后,昨天开机运行此程序时,本应该透明的区域就不能透明了,而是显示我已经屏蔽掉的白色。我在本机的win2000系统下运行一切正常,不知各位大侠可否帮小弟解释一二!多谢,多谢!
崩溃..Ext.Window突然变透明了.
如效果图所示:rn[img]http://dl.iteye.com/upload/attachment/147168/d17c2699-59d5-3ed4-8c18-1a3420d034fd.jpg[/img]rnrn<---- 这个window show()的时候,会变透明.rnrn我百思不得其解. 而且, 它也不是一直都是透明的.rnrn过一段时间, 它会变会正常的样子..rnrn这咋回事啊..想不明白. 今天开机,启动工程,就是透明的, 过会儿,又好了.rn不像是内存泄露的样子.要泄露,也不至于第一次就泄露吧~rnrnrn问题补充. 在同事的机器上用IE访问我的应用.无此问题..rnrn在我本机上IE访问,透明~~ 非IE访问.正常. 汗....n[b]问题补充:[/b]nrnrn问题再补充.rnrn同一时间下. 我的IE透明.rn非IE系列不通明.rncache也清理了...实在搞不懂啊~n[b]问题补充:[/b]nrnrnrn哥, 自带的木问题...rn我原来是2.2. 后来用3.0的包覆盖.rn我仅仅在本机的IE上透明状.rn同事访问我的机,IE.无此问题.rn难道是[品] ?rn
Android自定义控件之画布(Canvas)
共有三种方式绘制背景 canvas.drawColor(@ColorInt int color) canvas.drawRGB(int r, int g, int b) canvas.drawARGB(int a, int r, int g, int b) 绘制直线 drawLine(float startX, float startY, float stopX, float stopY,Pai...
Android Canvas(画布)详解
Android 中使用的图像处理引擎,2D部分是androidSDK内部自己提供,3D部分是用Open GL ES 1.0。而我们最常用的就是在一个View上画一些图片,形状或者自定义的文本内容,这里我们都是使用Canvas来实现的!你可以获取View中的Canvas 对象,在onDraw(Canvas canvas) 提供了canvas 对象. 在进行改变的时候调用,View.invalidat
背景变透明处理
背景变透明处理 一:ps打开对应图标 二:魔棒自动选择白色区域 三:双击图层锁子加图层 四:点击Delete清除即可 ​​ ​​ ​​
4.03 怎么把黑色背景弄成透明
安卓rn4.03 怎么把黑色背景弄成透明rn有没有人知道啊, 在其他地方 看了教程,但是2.2 的,需要反编译rnrnTouchWiz30Launcher.apk 。 但在 4.0里找不到。 4.0 需要改哪呢? 哪位大侠 指教以下
Android——Canvas(画布)的使用
Canvas的一些基本方法:Canvas():创建一个空的画布,可以使用setBitmap()方法来设置绘制的具体画布;Canvas(Bitmap bitmap):以bitmap对象创建一个画布,则将内容都绘制在bitmap上,bitmap不得为null;Canvas(GL gl):在绘制3D效果时使用,与OpenGL有关;drawColor:设置画布的背景色;setBitmap:设置具体的画布;c
Android之Canvas画笔和画布
久违的Canvas画布,终于学到这里了,学完以后附上博文一篇以便日后记不住。 目录 一、Canvas(画布) 二、Paint(画笔) 三、实例     涉及的相关知识点             1、绘制安卓机器人             2.绘制文本             3.绘制图片            4.绘制路径: 首先我觉得最难易懂大的一点是Canvas里面的四个坐...
CReBar添加BMP背景图片后,菜单栏背景一片黑色。如何设置才可以不是黑色?
如题。
为何我的填充多边形后, 反而什么变透明了。
pDC->BeginPath(); // 1rnrnpDC->Polyline(m_ZbPoints, 5);rnrnpDC->EndPath(); // 2rnPathToRegion(*pDC); // 3rnpDC->FillPath(); // 4rnrn没有上面注释的是可以画空的多边形。 反而加了 // 1 2 3 4 后 rn变成透明了, 我DC选择过画涮的。rnrn不知,有什么原因会这样。
透明颜色背景
background-color:rgb(55,55,55); filter:alpha(opacity=80);(其它) opacity.8;(IE)
Android 弹出PopupWindows背景变透明
其实关于弹出PopupWindows背景变暗的方法很多,网上也有很多资料。比如通过设置获取windows属性来设置透明度,还有通过在最外层设置一个半透明的背景显示与隐藏来达到那种效果等等。 常用的就是设置透明度(这是窗体本身的透明度,非背景) 1 WindowManager.LayoutParams lp=getWindow().getAttributes(); 2 lp.alpha=
MFC程序在别人的机子上怎么莫名其妙变透明了?
[img=https://img-bbs.csdn.net/upload/201309/13/1379059233_799074.jpg][/img]rn我使用的“在静态库中使用MFC”,编译生成程序约300多KB,在自己的电脑上完全正常,在其他同事电脑上有的正常有的不正常,我留意了,跟是否安装VS应该没有必然关系,显卡驱动也都正常,好奇怪啊
为什么在DIALOG把背景设为透明了,点一下标题栏就变透明,点一下DIALOG中就变成不透明了??
为什么在DIALOG把背景设为透明了,点一下标题栏就变透明,点一下DIALOG中就变成不透明了??
怎么将DIV的背景重新变为透明了?
开始时DIV的背景是红色的,怎么将这个DIV的背景变为透明的了?
一个有关背景(透明)颜色设置的问题?
import java.applet.*;rn代码如下:rnrnimport java.awt.*;rnimport java.awt.event.*;rnimport java.io.*;rnimport javax.swing.*;rn class YY1 extends Appletrnint i=0;rn public void paint(Graphics g)rnrn rn g.setFont(new Font("",1,30));rn rn switch (i)rn case 0:g.drawString("没",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++; repaint();rn break;rn case 1:g.drawString("没事",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++;rn repaint();rn break;rn case 2:g.drawString("没事的",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++;rn repaint();rn break;rn case 3:g.drawString("没事的时",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++;rn repaint();rn break;rn case 4:g.drawString("没事的时候",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++;rn repaint();rn break; case 5:g.drawString("没事的时候写",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++;rn repaint();rn break; case 6:g.drawString("没事的时候写写",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++; repaint();rn break; case 7:g.drawString("没事的时候写写代",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn rn i++; repaint();rn break; rn case 8:g.drawString("没事的时候写写代码",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn i++;rn repaint(); rn break;rn case 9:g.drawString("没事的时候写写代码……",0,30);rn tryThread.sleep(500);catch(InterruptedException e)rn i=0;rn repaint(); rn break;rn rnrnrnrnclass YY implements Runnablern rn YY()rn YY1 y = new YY1();rn Window w = new Window(null);rn w.setLayout(null);rn w.add(y);rn y.setBounds(0,0,600,40);rn y.setBackground(new Color(0,255,0,0));rn w.setSize(400,400);rn w.setVisible(true);rn w.setBounds(300,50,600,40);rn w.setBackground(new Color(0,0,255,0));rn w.toBack();rn rn rn public void run()rn rn new YY1(); rn rn public static void main(String [] arge)rn rn Thread r = new Thread(new YY()); rn r.start();rn rn rnrn 本来照我的想法,这东东在桌面上显示出来的,应该就只有那几个字,不应该会有背景颜色的,可是无论我怎么改,总会有背景颜色,各位大吓们,能否帮小弟解决这个问题,谢谢!!!
webstorm设置黑色背景
-
对话框作为视图类,背景怎么透明了呢?
插入了一个对话框,添加为视图类,通过按钮显示这个视图类的时候,背景怎么透明了呢?对话框作为视图类,需要特别设置什么属性吗?
Android 使用Canvas保存后一片黑色的
![![图片说明](https://img-ask.csdn.net/upload/201507/29/1438145624_991069.png)n调用方法 ,,在本地能看到图片 但是全是黑色的n图片说明](https://img-ask.csdn.net/upload/201507/29/1438145669_593845.png)
AI文件怎么把背景变透明???
AI文件怎么把背景变透明???rn有一AI文件,背景色为白色,怎么变成透明????
【求助】控件设置透明后,背景变成黑色了。
界面刚打开时,文本框背景色是白色的。rn[img=https://img-bbs.csdn.net/upload/201312/26/1388027671_707731.jpg][/img]rn等鼠标经过文本框后,背景色成为黑色的了rn[img=https://img-bbs.csdn.net/upload/201312/26/1388027685_338544.jpg][/img]rn但是静态文本框就可以。rn实在想不出什么方法了,不知道有人遇到过么?rnrnrnrnrn代码也相对简单,就是 OnCtlColor 和 OnEraseBkgnd 这两个函数rnrn[code=c]rn#include "stdafx.h"rn#include "testbg.h"rn#include "Test2.h"rnrnrn// CTest2 对话框rnrnIMPLEMENT_DYNAMIC(CTest2, CDialog)rnrnCTest2::CTest2(CWnd* pParent /*=NULL*/)rn : CDialog(CTest2::IDD, pParent)rnrnrnrnrnCTest2::~CTest2()rnrnrnrnvoid CTest2::DoDataExchange(CDataExchange* pDX)rnrn CDialog::DoDataExchange(pDX);rnrnrnrnBEGIN_MESSAGE_MAP(CTest2, CDialog)rn ON_WM_ERASEBKGND()rn ON_WM_CTLCOLOR()rnEND_MESSAGE_MAP()rnrnrn// CTest2 消息处理程序rnrnBOOL CTest2::OnEraseBkgnd(CDC* pDC)rnrn // TODO: 在此添加消息处理程序代码和/或调用默认值rnrn CBitmap m_BkGndBmp;rn m_BkGndBmp.LoadBitmap(IDB_BITMAP1);rn CRect rcClient;rn GetClientRect(&rcClient);rn BITMAP bm;rn m_BkGndBmp.GetBitmap(&bm);rn CDC memDC;rn memDC.CreateCompatibleDC(pDC);rn CBitmap *pOldBmp = memDC.SelectObject(&m_BkGndBmp);rn pDC->StretchBlt(0,0,rcClient.Width(),rcClient.Height(),&memDC,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);rn memDC.SelectObject(pOldBmp);rn memDC.DeleteDC();rn return TRUE;rnrnrnHBRUSH CTest2::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)rnrn HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);rnrn // TODO: 在此更改 DC 的任何属性rnrn // TODO: 如果默认的不是所需画笔,则返回另一个画笔rn if(nCtlColor == CTLCOLOR_BTN rn || nCtlColor == CTLCOLOR_STATIC rn || nCtlColor == CTLCOLOR_EDIT)rn rn pDC->SetTextColor(RGB(0,255,255));rn pDC->SetBkMode(TRANSPARENT);rn return (HBRUSH)GetStockObject(NULL_BRUSH); rn rn rn pDC->SetTextColor(RGB(0,0,255));rn pDC->SetBkMode(TRANSPARENT);rn return hbr;rnrnrn[/code]
canvas画布的渐变样式设置
创建渐变样式:四个参数 开始渐变的x y坐标 和 结束渐变的x y坐标 var gradient=context.createLinearGradient(100,100,300,100); var gradient1=context.createLinearGradient(100,100,300,100); 每个阶段的渐变样式 两个参数 第一个参数 0-1渐变阶段 第二个参数 渐变的颜色 ...
Winform 怎么设置控件的背景透名
Progress控件显示进度条rn我在上面放了个label,设置了label的backColor为Transparentrn可是还是不行,该怎么设置?
自定义控件设置canvas画布的大小
自定义的控件用canvas控制它的大小 @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { //设置宽高 setMeasuredDimension(900,500); } 只用重写onMeasure这个方法,然后设置它的宽高就可
Android开发,如何使canvas画布背景色透明。
在使用Android surfaceview进行绘图时,常常需要使绘制出来的图案背景色透明,以实现背景图片和绘制出来的图案融为一体
设置的颜色显示黑色
        在代码中为控件加颜色时,颜色的单词拼错了,运行该代码会将控件颜色显示为黑色!
如何将CANVAS设置透明?
请问各位大虾,小弟现正在做一个播放视频的控制栏,向把控制栏显现在全屏视频前端,但是由于canvas的原因,一直无法显示出这个控制栏,不知道各位有什么好办法吗?提供一下思路。rnrn我现在的想法是:rn1. 设置canvas为透明。rn2. 在canvas上直接访控制栏图片。rnrn不知道这两个方法行得通吗?用什么方法比较好?
如何设置canvas透明
我想做一个类似windows的画图程序。rnrn我想设计2层画布,上面一层透明,用于显示本次操作。下面一层不透明,保存之前的绘图。rnrn可是怎么设置canvas透明呢? canvas只有isOpaque,判断是否不透明。我没有找到类似setOpaque。
android popupwindow 点击按钮设置黑色背景
主要是在工作开发中遇到的:因为弄的时间有点久,这次就直接拿来记录一下。 直接上代码 package io.dcloud.H516ADA4C.activity;import android.content.Context; import android.graphics.Bitmap; import android.graphics.drawable.BitmapDrawable; import
相关热词 c# 线程结束时执行 c# kb mb 图片 c# 替换第几位字符 c#项目决定成败 c# 与matlab c# xml缩进 c#传感器基础 c#操作wps c# md5使用方法 c# 引用父窗口的组件