- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这里是 Android 编程新手。
我环顾四周,发现这是一个常见问题,但我并没有真正看到一个简单的解决方案...我正在尝试在 Nexus 7 上运行以下代码(已尝试过 AVD 和物理设备)没有任何运气。似乎是:
camera.setPreviewDisplay(SurfaceHolder);
但我可能是错的。这是当前代码:
public class MainActivity extends Activity implements SurfaceHolder.Callback{
Camera camera;
SurfaceView surfaceView;
SurfaceHolder surfaceHolder;
boolean previewing = false;;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cameralayout);
getWindow().setFormat(PixelFormat.UNKNOWN);
surfaceView = (SurfaceView)findViewById(R.id.surfaceview);
surfaceHolder = surfaceView.getHolder();
surfaceHolder.addCallback(this);
}
public void onClick() {
// TODO Auto-generated method stub
if(!previewing){
camera = Camera.open();
if (camera != null){
try {
camera.setPreviewDisplay(surfaceHolder);
camera.startPreview();
previewing = true;
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
大家有什么想法吗?感谢您的帮助!
最佳答案
来自android documentation关于Camera.open()
Creates a new Camera object to access the first back-facing camera on the device. If the device does not have a back-facing camera, this returns null.
它只能让您访问后置摄像头。
I am trying to run the following code on a Nexus 7
Camera.open()
返回 null
,因为 Nexus 7 没有后置摄像头,只有前置摄像头。
你可以试试这个方法
public Camera getCamera()
{
for(int i = 0; i < Camera.getNumberOfCameras(); i++)
return Camera.open(i);
return null;
}
要申请,
camera = getCamera();
关于java - camera.setPreviewDisplay(SurfaceHolder) 上的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15469150/
我正在使用 MediaRecorder 捕捉视频。部分代码如下。 surfaceView = (SurfaceView) findViewById(R.id.surface_camera);
在根据需要创建服务时,surfaceView 和 surfaceHolder 通过 intent 传递给服务。如何在服务端提取相同的内容。一直在尝试这个,但未能成功。 Activity : inten
如何在不使用 SurfaceHolder 的情况下获取手机的宽度或高度? 最佳答案 使用 DisplayMetrics displaymetrics = new DisplayMetrics();
我正在为 Android 中的动态壁纸实现一个渲染循环。我在 Internet 上找到的所有示例都包含这样的渲染循环: public void run() { while (mRunning)
当尝试从服务(无 GUI)拍照时,在某些设备上,我收到 RuntimeException。但是,如果我使用 SurfaceHolder 从 Activity 中拍照,它就会起作用。 Camera.Pa
我正在开发一款安卓游戏,我正在使用 SurfaceView。我有一个每 16 毫秒调用一次的方法(我想要 60fps) public void myDraw(SurfaceHolder holder)
我正在尝试使用 onPreviewFrame() 回调显示经过过滤的相机预览。 问题是当我删除这一行时: mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH
我想写一个球在屏幕上移动的程序,因此,我看了很多教程,但我无法理解这一行: mHolder = getHolder(); mHolder.addCallback(this); addCallback
每次我调用这些方法时,都需要 14-20 毫秒才能继续。 Canvas canvas = holder.lockCanvas(); holder.unlockCanvasAndPost(canvas)
这里是 Android 编程新手。 我环顾四周,发现这是一个常见问题,但我并没有真正看到一个简单的解决方案...我正在尝试在 Nexus 7 上运行以下代码(已尝试过 AVD 和物理设备)没有任何运气
我试图让应用程序每半秒在 Canvas 上绘制一些东西,但是 SurfaceHolder.getSurface().isValid() 返回 false,当我调用 SurfaceHolder.lock
我正在制作游戏,由于我是 Android 的新手,所以我的设计基于示例 LunarLander code .在其设计中,GameThread.doStart() 从 GameActivity 调用,然
我正在尝试编写一个使用相机的应用程序。当我试图获取我最终传递给启动相机的 surfaceCreated() 的 surfaceHolder 时,我得到了一个 NullPointerException。
我正在使用 Android SDK 实现一个相当标准的应用程序,其中涉及使用 SurfaceView、SurfaceHolder、Callback 设置进行绘图。 在我的主线程(UI 线程)中,我没有
我正在尝试创建一个 Canvas 并使用以下代码向其绘制位图: Paint paint = new Paint(); InputStream is = assets.open("card_art" +
void android.view.SurfaceHolder.setType(int type) public abstract void setType (int type) Since: API
我一直在尝试实现一个需要在表面上进行相机预览的应用程序。正如我所看到的, Activity 和表面生命周期都包含以下状态: 当我第一次启动我的 Activity 时:onResume()->onSur
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 8 年前。 Improve th
我正在制作基本的动态壁纸。代码在我的“运行 ICS 的 Galaxy S2(GT-I9100)” 上运行良好,函数返回正确的高度和宽度值。但是当我尝试在不同的设备上运行相同的 apk "Galaxy
我在市场上有一款 Android 游戏,在尝试使用 Canvas 时收到 NullPointers 的崩溃报告。我可以假设这是因为 SurfaceHolder.lockCanvas() 正在返回 nu
我是一名优秀的程序员,十分优秀!