Форум программистов, компьютерный форум CyberForum.ru

Xamarin

Войти
Регистрация
Восстановить пароль
 
Дима1237
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 4
#1

C# Xamarin Android захват изображения - Xamarin

15.07.2015, 12:17. Просмотров 636. Ответов 1
Метки нет (Все метки)

Подскажите, пожалуйста, как решить задачу.
Создал приложения на котором есть ImageView и кнопка, которая открывает камеру.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System;
 
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
 
using System.Collections.Generic;
using Android.Content.PM;
using Android.Net;
using Android.Graphics;
using Android.Provider;
 
namespace CameraDemoApp
{
    [Activity (Label = "CameraDemoApp", MainLauncher = true, Icon = "@drawable/icon")]
    public class MainActivity : Activity
    {
    
        protected override void OnCreate (Bundle bundle)
        {
            base.OnCreate (bundle);
            SetContentView (Resource.Layout.Main);
 
                Button button = FindViewById<Button>(Resource.Id.myButton);
                _imageView = FindViewById<ImageView>(Resource.Id.imageView1);
 
                button.Click += TakeAPicture;
            
        }
 
 
 
 
        private void TakeAPicture(object sender, EventArgs eventArgs)
        {
            Intent intent = new Intent(MediaStore.ActionImageCapture);
 
 
            StartActivityForResult(intent, 0);
        }
    }
 
}
Как вставить это изображения в ImageView?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2015, 12:17     C# Xamarin Android захват изображения
Посмотрите здесь:
C# Xamarin Android Как конвертировать изображения Uri в Bitmap Xamarin
Xamarin Xamarin Android
Xamarin Диплом на xamarin android
Xamarin Xamarin: разработка под android
Xamarin Ошибки свежеустановленого xamarin android
Xamarin Как создать приложения Android Xamarin
Xamarin Xamarin Android WebClient.DownloadString не отображает киррилицу
Xamarin Публикация приложения Xamarin.Forms для Android
Xamarin Xamarin developer Android. Отправка Method Post
Xamarin Ошибка при десериализации Json с Web.Api в Xamarin.Android
Xamarin Какие есть возможные варианты подключения к FireBird из Xamarin.Android?
Xamarin Ошибка при запуске приложения для Android в Visual Studio&Xamarin

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Дима1237
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 4
17.07.2015, 14:50  [ТС]     C# Xamarin Android захват изображения #2
Отыскал вот какой способ:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
namespace Test1
{
    [Activity(Label = "Main_Layout_Activity", Theme = "@android:style/Theme.NoTitleBar")]
            
    public class Main_Layout_Activity : Activity
    {
        Java.IO.File _file;
        Java.IO.File _dir;
        ImageView _imageView;
 
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main_layout);
 
             _imageView = FindViewById<ImageView>(Resource.Id.imageView1);
 
            if (IsThereAnAppToTakePictures())
            {
                CreateDirectoryForPictures();
 
                Button button = FindViewById<Button>(Resource.Id.buttonCamera);
                button.Click += TakeAPicture;           
            }
        }
 
        private bool IsThereAnAppToTakePictures()
        {
            Intent intent = new Intent(MediaStore.ActionImageCapture);
            IList<ResolveInfo> availableActivities = PackageManager.QueryIntentActivities(intent, PackageInfoFlags.MatchDefaultOnly);
            return availableActivities != null && availableActivities.Count > 0;
        }
 
        private void CreateDirectoryForPictures()
        {
            _dir = new Java.IO.File(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryPictures), "AndroidCameraVSDemo");
            if (!_dir.Exists())
            {
                _dir.Mkdirs();
            }
        }
 
        private void TakeAPicture(object sender, EventArgs eventArgs)
        {
            Intent intent = new Intent(MediaStore.ActionImageCapture);
 
            _file = new Java.IO.File(_dir, String.Format("myPhoto_{0}.jpg", Guid.NewGuid()));
       
            intent.PutExtra(MediaStore.ExtraOutput, Android.Net.Uri.FromFile(_file));
 
            StartActivityForResult(intent, 0);
        }
       
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            base.OnActivityResult(requestCode, resultCode, data);
 
            if (resultCode == Result.Canceled) return;
 
            Intent mediaScanIntent = new Intent(Intent.ActionMediaScannerScanFile);
            if (_file != null)
            {
                Android.Net.Uri contentUri = Android.Net.Uri.FromFile(_file);
                mediaScanIntent.SetData(contentUri);
                SendBroadcast(mediaScanIntent);
                _imageView.SetImageURI(contentUri);
               
            }
        }
 
    }
}
Вот только при этом изображения занимает много места...
Yandex
Объявления
17.07.2015, 14:50     C# Xamarin Android захват изображения
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru