如何在屏幕正下方显示从相机加插件拍摄的图像

Posted

技术标签:

【中文标题】如何在屏幕正下方显示从相机加插件拍摄的图像【英文标题】:How to display image taken from camera plus plugin right below the screen 【发布时间】:2019-10-18 07:34:35 【问题描述】:

我正在尝试在屏幕下方显示从相机加插件拍摄的图像。

为此,我正在尝试名为“照片捕获事件”的事件,并意识到事件本身并未被触发。我只是在里面放了一条警告消息,并确认它不起作用。下面是示例 sn-p,有关完整解决方法,请转到此链接 https://play.nativescript.org/?template=play-js&id=nvIlTl&v=3

CameraPlus.on(nativescript_camera_plus.CameraPlus.photoCapturedEvent, args => 
    fromAsset(args.data).then(result => 
      pic.src = result;
      alert(result);
    );
  );
<GridLayout rows="*,auto" class="home-panel">
        <Cam:CameraPlus row="0" id="camPlus" saveToGallery="true"
            showCaptureIcon="true" showGalleryIcon="true" showToggleIcon="true"
            showFlashIcon="true" debug="true">
        </Cam:CameraPlus>

        <Image row="1"  id="img_taken_id" src=" img_taken " />
</GridLayout>

首先,我需要知道为什么没有收到警报消息? 其次,我需要显示不存储在本地的图像?

重要提示:我正在为“android”而不是 ios 尝试这个

【问题讨论】:

你尝试过github示例吗? @vikas 是的,样本在本地运行良好。如果我单独只写我需要的事件。 “照片捕获事件”不起作用。 【参考方案1】:

这是因为您没有指向正确的方法。应该是,

let ImageSourceModule = require('tns-core-modules/image-source');
.....
.....
ImageSourceModule.fromAsset(args.data).then(result => 
  pic.src = result;
  alert(result);
);

【讨论】:

我想你还没有检查场景。我试图在 ImageSourceModule 本身之前发出警报。但它仍然无法正常工作。你可以在这里查看play.nativescript.org/?template=play-js&id=nvIlTl&v=4。这就是我提到照片捕获事件没有触发的原因。请解决这个问题,因为这个答案在逻辑上很好,但不起作用。如果您在不检查的情况下回答问题,我将无法通过删除此帖子再次提问。然后问题就生锈了。所以,我请求你在任何安卓手机和操场上再次检查场景。 我确实检查了这个问题,甚至在上述修改后让它在你的同一个操场上工作。图片在相机视图下方正确显示,替换了最初显示的 Google 图片。 我刚刚在具有我提到的更改的设备上尝试了上述 Playground 版本 (v4),我看到了警报和图像。 你能告诉我你用的是哪部手机吗?我不知道,但我认为这是核心模块的兼容性问题。所以这可能会发现任何其他问题。还请检查更新的游乐场样本并保存。给我链接,我将在您在手机上提供的样本上进行测试。可能会解决问题。否则我会制作一个 20 秒的问题视频并分享链接。 我在 Moto G5 Plus 和 Android 8.1 上进行了尝试,使用的 Playground 示例与您在上述评论 (play.nativescript.org/?template=play-js&id=nvIlTl&v=4) 中的相同。

以上是关于如何在屏幕正下方显示从相机加插件拍摄的图像的主要内容,如果未能解决你的问题,请参考以下文章

显示从相机拍摄的图像时,Uri 为空

使用相机角度失真从屏幕高度查找图像的实际高度

如何让用户选择在保存之前裁剪从相机拍摄的照片?

如何在Android和iPhone上拍摄占据整个屏幕的图像?

从图片中拍摄的照片不会显示在 android 的科尔多瓦相机插件中的裁剪

Flutter Camera Plugin 拍摄暗图像错误