使用相机拍摄图像后,照片不会返回到我的屏幕

时间:2012-06-28 12:37:29

标签: android cordova camera sencha-touch-2

我正在尝试使用相机捕获图像并放入android中的屏幕。我正在使用sencha touch 2,phonegap用于相机功能。它捕获图像但不在屏幕上显示。 这是我的代码:

在dashboardpanel文件中:

{
        xtype : 'image',
        id : 'capturedimage',
        src : '',
        width : 60,
        height: 60,
        width : 200
 },
 {
        xtype : 'container',
        id : 'btncontainer',
        width : 120,
        layout : {
                   type : 'vbox'
              },
        items : [
        {
              xtype : 'button',
              height : 73,
              cls : 'capturebtn',
              id : 'capturebtn',
              width : 100
         },
         {
              xtype : 'button',
              height : 73,
              margin : '10 0 0 0',
              cls : 'choosephotobtn',
              id : 'selectphoto',
              width : 100
          } ]
   },

在Controller文件中::

onCaptureButtonTap: function(button, e, options) {
    /**
     *   phonegap Camera
     */

    navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 20, allowEdit: true });  

       function onFail(message) {
           alert('Failed because: ' + message);
       }

       function onPhotoDataSuccess(imageData) {
           // Uncomment to view the base64 encoded image data
            console.log(imageData);

           // Get image handle
           //
           var smallImage = document.getElementById('capturedimage');

           // Unhide image elements
           //
           smallImage.style.display = 'block';

           // Show the captured photo
           // The inline CSS rules are used to resize the image
           //
           smallImage.src =  imageData;
         }

   }

但它没有来。任何人都可以帮助我..

3 个答案:

答案 0 :(得分:1)

这是因为我们现在默认使用getPicture中的FILE_URI返回类型。所以现在哟只是获取文件的URL而不是所有base64编码数据。这是一种更好的方法,因为它不使用尽可能多的内存。改变这一行:

image = "data:image/jpeg;base64," + imageData;

为:

image.src = imageData;

你应该全力以赴。

答案 1 :(得分:1)

老兄!!尝试在HTML上设置图像img src =“”id =“”你将在屏幕上获得该图像

答案 2 :(得分:0)

最后,我可以使用以下链接解决此问题:

Solution Link