ImageView不会隐藏或清除Android上的图片

时间:2017-01-05 23:33:31

标签: java android multithreading user-interface imageview

我这几天一直在使用android(iOS Developer),我无法清除ImageView。我已经尝试了一切!从字面上看!我用我的Camera实例拍摄照片,我可以将图像放在图像视图中,然后当我想要删除它时。它冻结了。但是,在下面的代码中更改的其他UIView元素正常工作。 (所以我猜UI线程工作正常)。

runOnUiThread(new Runnable() {
        @Override
        public void run() {

            Log.d("DEFAULTS", "Back to Defaults");

            processedTranslations = 0;
            totalTranslations = 0;

            nextIsProcessFaces = false;
            nextIsFinish = false;
            currentImage = null;

            imagePreview.setVisibility(View.GONE);
            imagePreview.setImageDrawable(null);
            imagePreview.setImageBitmap(null);
            imagePreview.setImageURI(null);
            imagePreview.setImageResource(android.R.color.transparent);
            imagePreview.setImageResource(0);
            imagePreview.destroyDrawingCache();
            imagePreview.invalidate();

            loadingView.setVisibility(View.GONE);
            captureButton.setEnabled(true);
        }
    });

这里我将资源分配给ImageView(此块在前一个块之前执行)(可能错误是它嵌套在另一个线程中?当另一个线程尝试编辑该imageView时,它不会被释放?)

runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Bitmap bitMapImage = BitmapFactory.decodeByteArray(blockData, 0, blockData.length);
                        Matrix matrix = new Matrix();
                        matrix.postRotate(90);
                        Bitmap rotatedBitmap = Bitmap.createBitmap(bitMapImage , 0, 0, bitMapImage .getWidth(), bitMapImage .getHeight(), matrix, true);
                        imagePreview.setImageBitmap(rotatedBitmap);
                        imagePreview.setScaleType(ImageView.ScaleType.CENTER_CROP);
                        imagePreview.setVisibility(View.VISIBLE);
                    }
                });

我知道这似乎是一个非常新手的问题(并且是一个非常重复的问题),但我已经在类似问题中尝试了所有答案(正如您在我的代码中看到的那样。)非常感谢您的帮助!

0 个答案:

没有答案