从Android处理草图

时间:2016-09-15 21:49:37

标签: java android processing

我试图从我的Android处理草图中保存图像,但是我收到了错误消息。如何将草图保存到用户手机图库中的图像文件?

public void draw(){
        beginShape();
        for (int i=0; i<d.length; i++){
            d[i].maison();

            int stroke1 = (int) random(255);
            int stroke2 = (int) random(255);
            int stroke3 = (int) random(255);

            stroke(stroke1, stroke2, stroke3);
            noFill();
            vertex(d[i].x , d[i].y);
        }
        endShape(CLOSE);

        UUID idOne = UUID.randomUUID();
        save(idOne + ".tga");

    }

错误:

  

09-15 23:47:25.939 23317-23389 / tutorials.androidstudio.fragmentsv3   E / AndroidRuntime:FATAL EXCEPTION:动画线程       过程:tutorials.androidstudio.fragmentsv3,PID:23317                java.lang.NullPointerException:尝试调用虚方法&#39; java.io.File   android.app.Activity.getFileStreamPath(java.lang.String中)&#39;在null   对象参考                    在processing.core.PApplet.sketchPath(未知来源)                    在processing.core.PApplet.savePath(未知来源)                    在processing.core.PApplet.save(未知来源)                    在tutorials.androidstudio.fragmentsv3.Sketch $ override.draw(Sketch.java:74)                    在tutorials.androidstudio.fragmentsv3.Sketch $ override.access $ dispatch(Sketch.java)                    在tutorials.androidstudio.fragmentsv3.Sketch.draw(Sketch.java:0)                    在processing.core.PApplet.handleDraw(未知来源)                    at processing.core.PGraphicsAndroid2D.requestDraw(Unknown Source)                    在processing.core.PApplet.run(未知来源)                                                                                                在java.lang.Thread.run(Thread.java:818)

1 个答案:

答案 0 :(得分:1)

您需要指定保存目录。通常,代码的方式是,Processing会将文件保存到&#34;数据&#34;项目目录中的文件夹,但在Android模式下不起作用。此外,我从来没有真正尝试过,但Android可能会有一个类,它可以返回你设备的某些目录,而无需你寻找它们,如图像,下载等。你应该看到谷歌开发者页面。