Пример #1
0
        protected async virtual void imageSelect()
        {
            this.IsBusy = true;
            await CrossMedia.Current.Initialize();

            if (!CrossMedia.Current.IsTakePhotoSupported)
            {
                await dialogService.DisplayAlertAsync("No Camera", "No camera available.", "OK");

                this.IsBusy = false;
                return;
            }

            var file = await CrossMedia.Current.PickPhotoAsync(new Plugin.Media.Abstractions.PickMediaOptions
            {
                PhotoSize      = Plugin.Media.Abstractions.PhotoSize.MaxWidthHeight,
                MaxWidthHeight = 500
            });

            if (file == null)
            {
                this.IsBusy = false;
                return;
            }
            this.Group.GroupImage = CustomImageSource.FromByteArray(() =>
            {
                var stream    = file.GetStream();
                var byteArray = Utils.ReadStram(stream);
                file.Dispose();
                return(byteArray);
            });
            this.IsBusy = false;
        }
Пример #2
0
        private static async Task setImageSourceFromBlob(GroupItem item)
        {
            var buffer = await downloadFile(item.Id, container_name_group);

            // replace if not defference image
            if (buffer != null && !buffer.EqualArray(item.GroupImage.StreamByte))
            {
                item.GroupImage = CustomImageSource.FromByteArray(() => { return(buffer); });
                // save as loadfile
                await saveImageByteToLocal(item.Id, container_name_group, buffer);
            }
        }
Пример #3
0
        public static async Task SetImageSource(GroupItem item)
        {
            ///// set from local
            var buffer = await getImageByteFromLocal(item.Id, container_name_group);

            if (buffer != null)
            {
                item.GroupImage = CustomImageSource.FromByteArray(() => { return(buffer); });
            }

            ///// set from Azure blob (not wait)
            setImageSourceFromBlob(item);
        }