【问题标题】:How to handle Xamarin Camera Button Click Event如何处理 Xamarin 相机按钮单击事件
【发布时间】:2018-03-14 22:04:54
【问题描述】:

现在我正在创建一个 Xamarin 应用程序,并且我正在使用相机登录。该应用程序运行良好,如下所示:

    var photo = await Plugin.Media.CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions { });

上述方法使用Camera API,构建Camera frame和Button如下:

我想在 10 秒 后自动触发相机的点击事件。请告诉我事件名称,它将被触发,它将如何触发?

谢谢

【问题讨论】:

    标签: xamarin xamarin.forms


    【解决方案1】:

    MediaPlugin 中没有这样的事件。

    有两种解决方案可以满足您的要求。

    第一个是不管拍照与否都运行延时。

    var photo = await Plugin.Media.CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions { });
    await Task.Delay(10000);
    if(photo != null)
    { 
        //photo was taken
    }
    else
    {
        //camera was canceled
    }
    

    更简洁的解决方案是使用计时器,一旦计时器到期,您就可以执行您的代码。

    第二个更难实现。您需要为 Android 和 iOS 编写特定于平台的代码。

    这意味着在 YourProjectName.Android 项目中你必须实现广播接收器来监听相机按钮的点击。

    YourProjectName.iOS 也是如此。 这里是a link

    【讨论】:

    • 第二个有意义
    猜你喜欢
    • 2011-10-16
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-12
    • 2016-11-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多