小编eye*_*erg的帖子

使用自定义相机拍照时出现RuntimeException - "takePicture failed"

内部发生错误CameraFragment- 只包含FrameLayout(用于保存相机预览)和ImageButton(用于捕获图像)的片段.在我的Fragment中我有一个PictureCallback:

private static Camera.PictureCallback mPicture = new Camera.PictureCallback() {

    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
        CameraFragment.DATA=data;
        final int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
        if (permission != PackageManager.PERMISSION_GRANTED) {
            ActivityCompat.requestPermissions(
                    activity,
                    PERMISSIONS_STORAGE,
                    REQUEST_STORAGE
            );
            return;
        }
        saveImageToDevice();

    }
};
Run Code Online (Sandbox Code Playgroud)

我从HandlerThread获取我的Camera实例:

private CameraHandlerThread mThread = null;

private static class CameraHandlerThread extends HandlerThread {
    Handler mHandler = null;
    private Camera handlerCamera;

    CameraHandlerThread() {
        super("CameraHandlerThread");
        start();
        mHandler = new Handler(getLooper());
    }

    synchronized void notifyCameraOpened() {
        notify();
    }

    void openCamera() { …
Run Code Online (Sandbox Code Playgroud)

android

13
推荐指数
1
解决办法
468
查看次数

相机预览很好,但前置相机会产生非常暗的照片

我使用Camera 1 API构建了一个自定义相机,由于某种原因,它产生非常暗的图片(仅在前置摄像头,后置摄像头工作得非常好).相机预览以正确的亮度显示相机,只有在拍摄图像并将其解码为位图时,它才会显得暗.我疯狂地谷歌搜索了一段时间,发现这个问题报告了很多次,但找不到工作的解决方案.我正在使用的设备是三星J5.

CameraPreview:

class CameraPreview extends SurfaceView implements SurfaceHolder.Callback {

  private static final String CAMERA = "CAMERA";

  private static Camera mCamera;

  private final CameraActivity cameraActivity;
  private final SurfaceHolder mHolder;

  public CameraPreview(Camera camera, CameraActivity cameraActivity) {
    super(cameraActivity);
    this.cameraActivity = cameraActivity;
    mCamera = camera;
    mHolder = getHolder();
    mHolder.addCallback(this);
    mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
  }

  public void setCameraDisplayOrientation(int cameraId) {
    Camera.CameraInfo info = new android.hardware.Camera.CameraInfo();
    Camera.getCameraInfo(cameraId, info);
    final int rotation = cameraActivity.getWindowManager().getDefaultDisplay().getRotation();
    int degrees = 0;

    switch (rotation) {
      case Surface.ROTATION_0:
        degrees …
Run Code Online (Sandbox Code Playgroud)

java camera android android-hardware android-camera

9
推荐指数
1
解决办法
290
查看次数

如何以人类可读的方式在Java中显示Calendar?

我有两个由Calendar对象组成的数组列表.我需要这两个列表来包含相同的对象并且顺序相同 - 但事实并非如此.我在调试器模式下运行程序来检查列表的内容,但对象描述是乱码.我只是想知道每一步的年,月和日是否相同.

这是我的调试器显示的内容:

在此输入图像描述

当我点击每个索引旁边的箭头以显示更多信息时,我仍然找不到我需要的东西.有没有解决的办法?或许还有另一种我不熟悉的调试工具?在这个阶段,我的调试技巧仅限于放置断点并单击错误图标.

感谢任何帮助.

java debugging intellij-idea

5
推荐指数
1
解决办法
954
查看次数

在Haskell中插入排序

我在Haskell上做一些练习.首先我被要求定义一个函数,insert :: Int -> [Int] -> [Int]以便insert x xs 将x插入到列表xs中,使得x大于它之前的那些元素,并且小于或等于它后面的元素:

insert :: Int -> [Int] -> [Int]
insert x [] = [x]
insert x (y:ys) = if x < y 
                 then x:y:ys 
         else y : insert x ys
Run Code Online (Sandbox Code Playgroud)

现在我需要使用insert来定义一个函数insertionSort :: [Int] -> [Int].这是我的尝试:

insertionSort :: [Int] -> [Int]
insertionSort [x] = [x]
insertionSort (x:xs) = insert x insertionSort xs
Run Code Online (Sandbox Code Playgroud)

错误:无法将预期类型[Int]与实际类型[Int] - > [Int]匹配

有谁知道如何解决这个问题?非常感谢任何见解,谢谢.

haskell functional-programming

3
推荐指数
2
解决办法
1万
查看次数

试图在LibGDX中画一个圆圈

这是非常基本的,但我无法弄清楚出了什么问题.基本上我是想在我的一个物体的某个区域周围绘制一个圆圈.我ShapeRenderer在构造函数中初始化了一个(称为srDebugCircle),并在render()方法中使用这个for循环来绘制每个对象.

for (GameObject object : levels.get(LEVEL_INDEX)) {
        if (object.getType() == ObjectType.SWINGING_SPIKES) {
            object.draw(batch);
            srDebugCircle.begin(ShapeType.Filled);
            srDebugCircle.circle(object.getxPos() + object.getWidth()/2, object.getyPos(), object.getWidth()/2);
            srDebugCircle.setColor(Color.BLACK);
            srDebugCircle.end();
        }

        if (object.getType() == ObjectType.COIN && (Coin) object).isVisible()) {
            object.draw();
        }
        ...
}
Run Code Online (Sandbox Code Playgroud)

问题是当我添加圆圈的代码时,我只看到15个对象中的4个.当我删除/评论它时,它照常工作 - 但是,在这两种情况下,我永远不会看到一个黑色的圆圈.

我特别谈到这部分:

            srDebugCircle.begin(ShapeType.Filled);
            srDebugCircle.circle(object.getxPos() + object.getWidth()/2, object.getyPos(), object.getWidth()/2);
            srDebugCircle.setColor(Color.BLACK);
            srDebugCircle.end();
Run Code Online (Sandbox Code Playgroud)

谁能明白为什么我有这个问题?

java android 2d render libgdx

3
推荐指数
1
解决办法
4453
查看次数

无法生成字符串的所有排列(迭代)

所以我正在进行一些Java练习,最近引起我注意的一个是尝试生成String使用迭代的所有排列.在线有很多例子 - 但是,很多例子看起来非常复杂,我无法遵循.

我尝试使用自己的方法,当使用长度为3的字符串进行测试时,它可以正常工作.方法是(对于每个字母)继续沿着字符串移动一个字母,用它前面的任何字母交换它.例如

index:  012
string: abc 

(iteration 1) swap 'a' (index 0) with letter after it 'b' (index 0+1) : bac
(iteration 2) swap 'a' (index 1) with letter after it 'c' (index 1+1) : bca
(iteration 3) swap 'a' (index 2) with letter after it 'b' (index 0)   : acb
current permutations: abc (original), bac, bca, acb

(iteration 3) swap 'b' (index 1) with letter after it 'c' (index 1+1) : acb
(iteration 4) swap …
Run Code Online (Sandbox Code Playgroud)

java string iteration algorithm permutation

2
推荐指数
1
解决办法
263
查看次数

与Haskell中的排序函数有点混淆

sorted :: Ord a => [a] -> Bool
sorted xs = and [x <= y | (x,y) <- pairs xs]
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释这个随机and是怎么=回事?它在我编译它时起作用,但它对我来说没有逻辑意义.是因为Haskell以递归方式工作并且使用它and来比较下一个项目吗?

任何见解都受到高度赞赏.

recursion haskell functional-programming

1
推荐指数
1
解决办法
113
查看次数

使用Haskell中的列表推导定义无限的Fibonacci数序列

我该怎么做?这是我演讲幻灯片中练习的一部分,提示是使用库函数tail :: [a] -> [a]zip :: [a] -> [b] -> [(a,b)].此外,功能的类型是fibs :: [Integer]

我知道列表理解是如何工作的,如何编写一个递归的Fibonacci函数,它接受一个值并且熟悉tail和zip函数 - 但是,我只是无法弄清楚这一个并且无法找到一个在线示例.任何人都可以告诉我它是如何完成的吗?

出于好奇,Haskell中使用的函数如何(产生无限列表)?如果我fibs在ghci命令提示符下写(函数名),例如它是否会继续打印列表中的元素,直到时间结束?

在此先感谢您的帮助.

haskell functional-programming list-comprehension fibonacci

1
推荐指数
1
解决办法
185
查看次数

有没有办法将矢量值的指数存储为变量本身?

testVector =

   1.0e+10 *

    3.5688    3.1110    5.2349
Run Code Online (Sandbox Code Playgroud)

是否有可能取出一个向量的指数(不确定它叫什么)并将其存储为变量?例如,在这种情况下,变量将具有值1.0e+10

matlab

1
推荐指数
1
解决办法
49
查看次数