s00sss00s 2022-07-23 14:50 采纳率: 37.5%
浏览 84
已结题

使用xamarin.forms 调用安卓相机在相机预览上面画一个框,按拍照按钮后自动只保存框中的图片部分。框以外区域在预览时改成半透明状态。

使用xamarin.forms 调用安卓相机,想达到下图这种效果,

img

在相机预览上面画一个框,按拍照按钮后自动只保存框中的图片部分。框以外的黑色区域在预览时改成半透明状态,便于拍照者在使用中定位拍摄位置。
我现在使用了微软的官方文档里面的代码,
文档地址:https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/custom-renderer/contentpage
先创建一个名为CameraPage的contentpage页面,然后在mainpage页面点击按钮可以push出该页面,到这一步:

img

后面的创建安卓端自定义页面渲染器那里老是错误,把视频流添加不进去。
在这里出的错:

[assembly: ExportRenderer(typeof(CameraPage), typeof(CameraPageRenderer))]
namespace CustomRenderer.Droid
{
    public class CameraPageRenderer : PageRenderer, TextureView.ISurfaceTextureListener
    {
        ...
        public CameraPageRenderer(Context context) : base(context)
        {
        }

        protected override void OnElementChanged(ElementChangedEventArgs<Page> e)
        {
            base.OnElementChanged(e);

            if (e.OldElement != null || Element == null)
            {
                return;
            }

            try
            {
                SetupUserInterface();
                SetupEventHandlers();
                AddView(view);
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(@"            ERROR: ", ex.Message);
            }
        }
        ...
    }
}

img

希望可以比官方文档那里更具体的指导下如何在安卓的项目里面操作。

  • 写回答

3条回答 默认 最新

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月24日
  • 修改了问题 7月24日
  • 修改了问题 7月24日
  • 修改了问题 7月24日
  • 展开全部

悬赏问题

  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败