Я все еще довольно новичок в 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 для поиска файла.)