相机打开时,上一张图像的缩略图代替取消按钮

时间:2013-02-27 10:40:28

标签: titanium titanium-mobile

我希望在相机运行时显示相机拍摄的上一张图像的缩略图而不是取消按钮...

可能吗?需要帮助..

1 个答案:

答案 0 :(得分:0)

是的。只需捕获最后一张图像,将其保存在内存中(或将其保存到磁盘中),然后将其用作控件之一。我们可以使用overlay函数的Titanium.Media.showCamera属性执行此操作。这是一个简单的例子:

首先,我们需要一个叠加视图来显示图像。     var overlayView = Ti.UI.createView();     var imageView = Ti.UI.createImageView({         宽度:44,         高度:44,         左:5     });

overlayView.add(imageView);

现在这是我们用覆盖视图打开相机的功能。请注意,我们没有控件,因此您需要添加控件(用于关闭等)。我们现在所做的只是设置叠加图像。

Titanium.Media.showCamera({
    success:function(event) {
        // called when media returned from the camera
            imageView.image = event.media;
    },
    cancel:function() {},
    error:function(error) {},
    saveToPhotoGallery:true,
    allowEditing:true,
    mediaTypes:[Ti.Media.MEDIA_TYPE_PHOTO],
    overlay : overlayView,
    showControls: false // This is important!
});

要真正完成这项工作,您可能需要将event.media保存在全局变量中,或使用类似技术确保overlayView不会被清除/垃圾收集。

这也是一个准确的解决方案,不是很强大,但这是我会用的基本方法!