Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android surfaceview提供较深的阴影_Android_Colors_Surfaceview - Fatal编程技术网

Android surfaceview提供较深的阴影

Android surfaceview提供较深的阴影,android,colors,surfaceview,Android,Colors,Surfaceview,我不熟悉图形和SurfaceView等。我听说在单独的线程上绘制比在主线程上绘制更好。我有两个活动,一个使用视图的ondraw绘制,另一个使用曲面视图。两者的绘图代码相同。然而,即使在最大alpha设置(255)下,后者也会提供更暗的背景颜色。如果我注释掉drawargb线,我会得到一个黑色背景。我尝试了很多方法,比如设置surfaceview对象的背景色,将pixelformat设置为rgb888或透明,但都没有成功。下面是代码: SurfaceHolder ourHolder;Boolean

我不熟悉图形和SurfaceView等。我听说在单独的线程上绘制比在主线程上绘制更好。我有两个活动,一个使用视图的ondraw绘制,另一个使用曲面视图。两者的绘图代码相同。然而,即使在最大alpha设置(255)下,后者也会提供更暗的背景颜色。如果我注释掉drawargb线,我会得到一个黑色背景。我尝试了很多方法,比如设置surfaceview对象的背景色,将pixelformat设置为rgb888或透明,但都没有成功。下面是代码:

SurfaceHolder ourHolder;Boolean isRunning=true;
Thread ourThread;ArrayList<Float> amtint=new ArrayList();float max;
String names[];String company;
public GraphSview(Context c) {
    super(c);
ourHolder=getHolder();

ourThread=new Thread(this);
ourThread.start();}
public void pause(){
isRunning=false;
while(true){try {
    ourThread.join();
} catch (InterruptedException e) {
      // TODO Auto-generated catch block
    e.printStackTrace();
}break;}ourThread=null;
}

public void Resume()
{
 isRunning=true;
ourThread=new Thread(this);
ourThread.start();}
@Override
public void run() {
    // TODO Auto-generated method stub
    while(isRunning){
if(!ourHolder.getSurface().isValid())continue;
Canvas canvas=ourHolder.lockCanvas();
canvas.drawARGB(255, 33, 181, 238);
....  ourHolder.unlockCanvasAndPost(canvas);
代码有问题吗?
除了表面视图,还有其他创建和显示图形的方法吗?

我使用bitmapfactory等工具将所需颜色的矩形bmp放在整个屏幕上,这样就解决了问题
public class GraphS extends Activity{
GraphSview ourSview;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    ourSview=new GraphSview(this);
    ourSview.getHolder().setFormat(PixelFormat.TRANSPARENT);
    setContentView(ourSview);
    //ourSview.setBackgroundColor(0Xffffffff);
}
@Override
protected void onPause() {
    ourSview.pause();
    super.onPause();
}
@Override
protected void onResume() {
ourSview.Resume();  // TODO Auto-generated method stub
    super.onResume();
}

   }