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

C# Xamarin Android Как конвертировать изображения Uri в Bitmap - Xamarin

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Клиент-серверное приложение android http://www.cyberforum.ru/xamarin/thread1500189.html
Ребят, такая задача: Необходимо, чтобы пользователь1 мог отправлять сообщение со своего приложения на телефоне/компьютере на другое приложение пользователя2, но пользователь2 мог их только читать. Отправка с клиента пользователя2 на приложение пользователя1 невозможна. Все клиенты должны получать уведомления разом и без необходимости вручную подключаться к серверу. Должны приходить...
Android Получить имя пользователя и обложку из Google+ Здравствуйте! Необходимо получить имя пользователя и его обложку (обложка просто по дизайну требуется) для этого использую google play service library, из-за чего размер приложения вырастает с 4.5 до 9 Мб (установленного)... Есть ли какой-то менее ресурсоёмкий способ? Просто увеличить приложение на 4.5 Мб только из-за имени пользователя это как-то жестоко по отношению к пользователям. Буду... http://www.cyberforum.ru/xamarin/thread1500188.html
Android FindViewById
Назрел вопрос, почему в MainActivity мы пишем, например, ListView lvMain = (ListView) findViewById(R.id.lvMain); А в другом классе можно писать, например, только так: (TextView) view.findViewById(R.id.tvDescr) Почему в MainActivity мы не пишем view.findViewById? А пишем сразу findViewById? Помогите пожалуйста
Подгрузка данных в TabSlider Android
Здравствуйте, помогите пожалуйста решить проблему. У меня есть класс HomeScreen и HomeScreenFragment. Дело вот в чем, в первом фрагменте у меня в список ListView должны подгружаться данные из БД, но делать они этого не хотят. Для этого я использую SimpleAdapter, но вот в строке: sAdapter = new SimpleAdapter(this, data, R.layout.view_list_product, from, views); вылетает ошибка, ругается на...
Android Размещение рекламы в приложении Android (Eclipse) http://www.cyberforum.ru/xamarin/thread1500074.html
Привет всем любителям программирования, столкнулся с проблемой, что не могу вставить рекламу в Android приложение на Eclipse. Все делаю как сказано на официальном сайте admob, возможно проблема в том, что appcompat_v7 и google_play_services не хотят работать вместе, может есть знающий человек, который мне поможет с этим разобраться? Тружусь над это рекламой день и ночь, но все никак не могу...
Android Создание интерфейса на основе макета Photoshop Я только начинаю программировать под андроид. Возникли некоторые сложности с версткой,а точнее - адаптацией под разные размеры экранов. И так.. Есть общий макет приложения в фотошопе(psd) под xhdpi. Как, основываясь на размерах этого макета, высчитать пропорциональные размеры для: mdpi, hdpi, 2xhdpi, 3xhdpi? Как пример возьмем размер текста: 88px. по формуле: dp=px/(dpi/160) получаем:... подробнее

Показать сообщение отдельно
Дима1237
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 4
18.07.2015, 17:57  [ТС]     C# Xamarin Android Как конвертировать изображения Uri в Bitmap
Попробовал как-то так:
C#
1
2
  Bitmap bitmap = MediaStore.Images.Media.GetBitmap(ContentResolver, Android.Net.Uri.FromFile(_file));
                _imageView.SetImageBitmap(bitmap);
Вот только с этим решениям, непонятно по какой причине, после 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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
using System.Data;
using System.IO;
using SQLite;
 
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using SqLiteConnection.DataBaseCreate;
 
using Android.Content.PM;
using Android.Net;
using Android.Graphics;
using Android.Provider;
using Java.Net;
using Android.Media;
using Java.IO; 
 
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;
 
        
        private Button bExit;
        private TextView getTxtViewUser;
        public string myName = MainActivity.MainRef.UserNameGET();
        protected override void OnCreate(Bundle bundle)
        {
 
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main_layout);
 
            getTxtViewUser = FindViewById<TextView>(Resource.Id.textViewUser);
 
            
           // DBRepository dbr = new DBRepository();
           // string userId = dbr.FindUserNameAndId(myName);
            getTxtViewUser.Text = myName;
 
            //Create tabel Image
            //string dbPath = System.IO.Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "ormdemo.db3");
            //var db = new SQLiteConnection(dbPath);
            //db.CreateTable<ImagesTabele>();
 
 
            bExit = FindViewById<Button>(Resource.Id.buttonExit);
            bExit.Click += bExit_Click;
 
             _imageView = FindViewById<ImageView>(Resource.Id.imageView1);
         //    _imageView.SetImageResource(Resource.Drawable.testImage);
 
            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);
        }
       Context  c;
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            base.OnActivityResult(requestCode, resultCode, data);
 
            if (resultCode == Result.Canceled) return;
 
            // make it available in the gallery
            Intent mediaScanIntent = new Intent(Intent.ActionMediaScannerScanFile);
           
                Android.Net.Uri contentUri = Android.Net.Uri.FromFile(_file);
 
                
                Bitmap bitmap = MediaStore.Images.Media.GetBitmap(ContentResolver, Android.Net.Uri.FromFile(_file));
                _imageView.SetImageBitmap(bitmap);
                
            
 
 
        }
 
 
 
        void bExit_Click(object sender, EventArgs e)
        {
            Intent intent = new Intent(this, typeof(MainActivity));
            this.StartActivity(intent);
        }
 
 
    }
}
А вот если вместо Bitmap использовать Uri:
C#
1
_imageView.SetImageURI(contentUri);
программа не закрывается и работает нормально...
 
Текущее время: 04:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru