
vladimir
26.07.2018
11:25:01
я про iOS говорю

Андрей Родионович
26.07.2018
11:25:32
Это сообщение прогрузилось только сейчас)

vladimir
26.07.2018
11:25:39
у вас вообще forms проект, разве нет?

Андрей Родионович
26.07.2018
11:25:45
Да да

Google

Андрей Родионович
26.07.2018
11:25:54
Я понял, на ios создам отдельную папку

vladimir
26.07.2018
11:26:00
ну так используйте Embedded Resources
и не надо копипастить файлы в каждый проект
делайте всё в общем проекте

Андрей Родионович
26.07.2018
11:26:28
Оу, попробую, спасибо

Max
26.07.2018
11:26:55
Но работать будет

vladimir
26.07.2018
11:27:21
ну картинки точно можно

Max
26.07.2018
11:27:25
С иконками будет проблемы

vladimir
26.07.2018
11:27:56
не, иконки пусть в каждом проекте живут
если мы про иконки приложения

Max
26.07.2018
11:28:06

Google

Андрей Родионович
26.07.2018
11:30:04
Попробывал, bitmap - null, у самого стрима в cannot access a disposed object

vladimir
26.07.2018
11:31:38
и что же вы попробовали?

Андрей Родионович
26.07.2018
11:32:39
Создал папочку в общем проекте, закинул картинку, использовал внедренный ресурс
Дальше код
var stream = new FileStream("Options.png", FileMode.Open, FileAccess.Read);
var bitmap = SKBitmap.Decode(stream, new SKImageInfo((int)(Options_Button.Width), (int)(Options_Button.Height)));
stream.Close();
canvas.DrawBitmap(bitmap, 0, 0);
Говорят, можно еще так
var bitmap = SKBitmap.Decode("file.png");
var scaled = bitmap.Resize(new SKImageInfo(newWidth, newHeight), SKBitmapResizeMethod.Lanczos3);

vladimir
26.07.2018
11:33:18
ну то есть вы делали сами, а не по статье, как работать с внедрёнными ресурсами?

Андрей Родионович
26.07.2018
11:33:24
Но оно все равно возвращает null

vladimir
26.07.2018
11:33:42
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/files?tabs=vswin#loading-files-embedded-as-resources
конечно null
вы файл неверно достаёте
Все не выйдет так разместить
кстати, чтобы ещё избежать копипасты, файлы, которые нужны в каждой системе, но из общего проекта их не загрузить, можно расположить в папке общего проекта всё равно, а добавить в проекты каждой системы по ссылке
о_.

Max
26.07.2018
11:38:03
•_•

Андрей Родионович
26.07.2018
11:42:26
Вот писал парень
is the image marked as Embedded Resource?
is the image embedded in the same assembly as the type returned by GetType()?
Assuming the above is true (and the image is valid), then this should work:
string resourceID = "Helloworld.Media.icon.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
{
resourceBitmap = SKBitmap.Decode(stream);
}
NOTE: no need for SKManagedStream anymore - it is done internally.
Это так как в статье
stream теперь null
Что то неправильно

vladimir
26.07.2018
11:42:59
да

Андрей Родионович
26.07.2018
11:43:03
Что?(

Google

vladimir
26.07.2018
11:43:06
какой парень? где вы это находите?
по статье делайте

Андрей Родионович
26.07.2018
11:43:22
https://github.com/mono/SkiaSharp/issues/343
Это и статья одно и то же

vladimir
26.07.2018
11:43:36
сделайте уже наконец по статье
ё-маё
нет
какой путь до файла в общем проекте?

Андрей Родионович
26.07.2018
11:44:16
Мой код
string resourceID = "Helloworld.Media.icon.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
{
resourceBitmap = SKBitmap.Decode(stream);
}
Код в статье
var assembly = IntrospectionExtensions.GetTypeInfo(typeof(LoadResourceText)).Assembly;
Stream stream = assembly.GetManifestResourceStream("WorkingWithFiles.PCLTextResource.txt");
string text = "";
using (var reader = new System.IO.StreamReader (stream)) {
text = reader.ReadToEnd ();
}
Images/Options.png

vladimir
26.07.2018
11:45:12
и у файла тип EmbeddedResousrce, верно?

Андрей Родионович
26.07.2018
11:45:19
Да

Андрей Родионович
26.07.2018
11:45:40
Внедренный ресурс

vladimir
26.07.2018
11:45:40
какое пространство имён у вашего проекта общего?

Андрей Родионович
26.07.2018
11:46:01
Calculator

vladimir
26.07.2018
11:46:41
грузите так
Stream stream = assembly.GetManifestResourceStream("Calculator.Images.Options.png");

Андрей Родионович
26.07.2018
11:46:59
Окей, спасибо, поробую

vladimir
26.07.2018
11:48:02
также в статье есть подзаголовок Debugging Embedded Resources
там можно пройтись по всем ресурсам, которые вы добавили, и если там ничего нет, значит ваш файл не был добавлен по какой-то причине

Андрей Родионович
26.07.2018
11:48:40
О, заработало, храни вас господь)
В прошлом проекте не указывал директории для картинок и все работало
Буду знать, еще раз спасибо

Google

vladimir
26.07.2018
11:49:18
пожалуйста
плюс почти у каждой статьи есть свой сэмпл проект
его тоже можно глянуть и сравнить

Андрей Родионович
26.07.2018
11:50:47
Кстати, а почему вы говорили, что битмапку неправильно сразу отриосвывать?

vladimir
26.07.2018
11:50:51

Андрей Родионович
26.07.2018
11:53:20
Окей, может быть, попробую присобачить в OnSizeChanged загрузку

vladimir
26.07.2018
12:00:21
картинки вообще можно куда-нибудь даже кэшировать

Admin
ERROR: S client not available

vladimir
26.07.2018
12:01:31
а хотя не надо, наверное
тут может быть только хранение в памяти, но она не резиновая, потому пусть да, достаются из файлов

Georgy
26.07.2018
12:09:59
Кто может подсказать по FCM, то бы обработать push от FCM с данными в режиме когда приложение не запущено. В доках написанно, что нужно использовать receiver com.google.firebase.iid.FirebaseInstanceIdReceiver, но он автоматически пуш показывает, а если нужно например Activity запстить, то нужно свой такой ресивер реализовать FcmBroadcastReceiver : BroadcastReceiver?

Ze
26.07.2018
12:40:08
Speak English

Max
26.07.2018
12:51:16

Dim
26.07.2018
12:55:22

Artem
26.07.2018
12:57:08

Dim
26.07.2018
12:58:59

Kirill
26.07.2018
13:00:37

Dim
26.07.2018
13:05:34

Google

Kirill
26.07.2018
13:12:35

Dim
26.07.2018
13:16:25
Да пожалуйста, но надо ли?
Кирил, я только начал xamarin изучать , поэтому спасибо за любой совет. как на ios работает TabbedPage или под него тоже нужно задавать свои размеры ?

Artem
26.07.2018
13:17:16
Dim там нужны стандартные размеры. В статье, что я скинул есть

Dim
26.07.2018
13:20:23

vladimir
26.07.2018
13:21:43
у вас эмулятор с мелким экраном запущен
таких сейчас почти не найти

Kirill
26.07.2018
13:24:04
В xamarin forms используются стандартные системные контролы, в том числе и таббар. Выглядит так, как представляет система. Размеры тоже стандартные. У @maukur_dev есть код, который позволяет включить отображение текста на стандартном таббаре

vladimir
26.07.2018
13:25:53
я вообще к тому писал, что измените размер экрана у эмулятора (не окна, а устройства), и всё будет меньше и полностью вмещаться
оно потому и огромное, что у вас мелкий экран
вон какой высокий статус бар

Kirill
26.07.2018
13:29:20

Dim
26.07.2018
13:33:59

vladimir
26.07.2018
13:34:47

Dim
26.07.2018
13:35:32

vladimir
26.07.2018
13:36:58
ну создайте новый в Android Device Manager

Artem
26.07.2018
13:37:30
Dim попробуйте уменьшить размер шрифта в настройках андроид

Yury
26.07.2018
14:02:24
при 4 иконках текст действительно пропадает, это сделано по гайдам гугла
попробую как в этой статье (в самом конце)

Sasha
26.07.2018
14:17:38
Всем привет, где-то прочитал что нельзя делать рендеринг на StackLayout, это правда? Тогда вопрос как лучше задать градиент на бэкграунд StackLayout?

vladimir
26.07.2018
14:25:35

Dim
26.07.2018
14:59:12

Kirill
26.07.2018
15:03:18

Dim
26.07.2018
15:46:02
нет
Кирил, подскажы пожалуйста , в каком направлении смотреть , что бы внутри внутри вкладки tabeedpage также сделать навигацию при этом что бы текущая не сбрасывалась ?