繁体   English   中英

OnActivityResult Xamarin.Forms

[英]OnActivityResult Xamarin.Forms

问题:我需要访问并覆盖当前Xamarin.Forms.Context的OnActivityResult。

问题:我不知道该怎么做。

我尝试过的事情:我尝试扩展Activity,但是得到了一个空Exception。 我尝试创建BaseActivity : Activity但是我不知道如何传递结果,但仍然收到null异常。

我的课看起来像这样:

public class Media : IMedia
{
        Activity context;

        /// <summary>
        /// Initializes a new instance of the class.
        /// </summary>
        public Media()
        {
            context = Forms.Context as Activity;

            //Check for Camera intent
            takePictureIntent = new Intent (MediaStore.ActionImageCapture);
            //context.StartActivityForResult (takePictureIntent, 0);

            //Check for gallery intent
            pickPictureIntent = new Intent();
            pickPictureIntent.SetType ("image/*");
            pickPictureIntent.SetAction (Intent.ActionGetContent);
            //context.StartActivityForResult (Intent.CreateChooser(Intent, "Select Picture"), 1);

            if (context.PackageManager.HasSystemFeature (PackageManager.FeatureCamera)) {
                IsCameraAvailable = true;
                IsPhotosSupported = true;
                IsVideosSupported = true;
            }

        }

        protected override void OnActivityResult (int requestCode, Result resultCode, Intent data)
        {
            switch (requestCode) {
            case 0:
                if (resultCode == Result.Ok) {
                    var selectedImage = data.Data;
                    //imageview.setImageUri(selectedImage);
                }
                break;
            case 1:
                if (resultCode == Result.Ok) {
                    var selectedImage = data.Data;
                    //imageview.setImageUri(selectedImage);
                }
                break;
            }
        }
}

Form.Context与您的MainActivity相同。 您应该改写MainActivity.OnActivityResult。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM