如何在Android中初始化新的Camera.Size

jjL*_*Lin 11 android

例如:

int width = 720;
int height = 1280;
Run Code Online (Sandbox Code Playgroud)

我想创建一个Camera.Size.

Camera.Size size = new Camera.Size(width,height);
Run Code Online (Sandbox Code Playgroud)

但它有一些错误.

No enclosing instance of type Camera is accessible. Must qualify the allocation with an enclosing instance of type Camera (e.g. x.new A() where x is an instance of Camera).
Run Code Online (Sandbox Code Playgroud)

小智 19

实际上,需要稍微不同的语法:

Camera camera = Camera.open();
Camera.Size size = camera.new Size(width, height);
Run Code Online (Sandbox Code Playgroud)


gra*_*u03 9

我知道你很久以前就发布了你的问题,但我对这个错误有一些解释.正如您在此处所看到的,类Size被声明为public(但非静态)到Camera类中.您可以在此处找到有关此架构的一些信息.

因此,要创建新的Camera.Size对象,必须首先创建一个Camera对象.

Camera camera = Camera.open();
Run Code Online (Sandbox Code Playgroud)

然后,您可以创建Camera.Size对象:

Camera.Size size = camera.new Camera.Size(width, height);
Run Code Online (Sandbox Code Playgroud)

我不确定你是否真的想用这种方式来做这件事,但这是关于你的错误的解释.