Почему я не могу найти изображение, добавленное в мой образец решения Android? - PullRequest
0 голосов
/ 14 февраля 2020

Я все еще довольно новичок в Visual Studio / Xamarin. Я пытаюсь вставить изображение в мой Android образец.

Я использую Visual Studio для сообщества Ma c 8.4.5 (сборка 19) на MacOS Mo java 10.14.6 и следующие пакеты:

  • BruTile 2.1.2
  • Mapsui 1.4.8
  • OsmSharp 6.2.0
  • Xamarin. Android .Support .Core.Utils 28.0.0.3
  • Xamarin. Android .Support.CustomTabs 28.0.0.3
  • Xamarin. Android .Support.Design 28.0.0.3
  • Xamarin .Essentials 1.3.1

В своем решении я добавил изображение в следующие местоположения:

  • Активы> Изображения> sample.png
  • Ресурсы> drawables> sample.png

Затем я пытаюсь найти его, используя следующий код:

    String target = "sample.png"
    Assembly resourceAssembly = null;
    String resourceName = null;
    Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
    foreach (Assembly assembly in assemblies)
    {
        Console.WriteLine("Assembly: '" + assembly.GetName());
        try
        {
            String[] fileNames = assembly.GetManifestResourceNames();
            foreach (var fileName in fileNames)
            {
                Console.WriteLine("File Name: '" + fileName + "'");
                if (fileName.ToUpper().EndsWith(target.ToUpper()))
                {
                    resourceAssembly = assembly;
                    resourceName = fileName;
                }
            }
        }
        catch (NotSupportedException e)
        {
            Console.WriteLine(
                "Not Supported for Assembly: '" + assembly.GetName() + "'  (" + e.GetType() + ")"
            );
        }
    }
    if (resourceName != null) {
        Console.WriteLine("Resource file name [{0}] found as [{1}]", fileName, resourceName);
    }

Журнал консоли показывает довольно большое количество сборок и имен файлов, но никогда выводит последнюю строку и, следовательно, не находит файл sample.png.

Почему этот код не находит файл? Я добавил файл в неправильное место в моем решении? Или мне нужно что-то сделать дополнительно?

(В настоящее время я предпочитаю использовать подход Assembly для поиска файла.)

1 Ответ

0 голосов
/ 14 февраля 2020

Я не уверен на 100%, что вы пытаетесь сделать, приятель, но если вам нужно изображение, чтобы показать, вы можете использовать xaml.

<Image Source="sample.jpg" />

Пока имя файла все ниже регистр, никаких специальных символов / цифр и нет - Ресурсы> чертежи, которые он должен показывать.

Надеюсь, это поможет.

...