У меня есть такой простой Xaml:
...
<ContentPage.Content>
<Grid Padding="0,40,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Image Grid.Row ="0" Source="iMobile"
HorizontalOptions="CenterAndExpand"
WidthRequest="260" HeightRequest="129"/>
</Grid>
</ContentPage.Content>
Изображение iMobile
появляется на Android
и ios
. Для Android
у меня есть разные размеры изображения в отдельных папках с возможностью рисования. Для ios
у меня есть изображения разных размеров в каталоге Assets.
Я попытался сделать то же самое для UWP, но, похоже, ничего не работает. Вот некоторые из вещей, которые я пробовал делать:
Я добавил изображение в корневой каталог проекта UWP, но это не работает.
Я добавил изображение в каталог Assets, но это не сработало.
Я попытался добавить
.scale-100
,.scale-200
и.scale-400
к имени файла изображения (пробовал их все по отдельности), но это не сработало.Я также попытался поместить изображение в каталог с именем scale-100 , но это тоже не сработало.
Есть идеи, что может вызвать мою проблему и как я могу это исправить? Очень расстраивает то, что что-то столь тривиальное отнимает у меня так много времени.
Обновление: Я попытался использовать URL-адрес в качестве источника вместо iMobile, и это не работает и для UWP, но работает для Android, и почему это может быть?
1 ответ
Как сделать так, чтобы изображения отображались в версии UWP моего приложения Xamarin.Forms
См. Изображения в Xamarin.Forms < / a> официальный документ. Поддержка формы Xamarin Собственные разрешения.
Имена файлов изображений UWP могут быть дополнены суффиксом .scale-xxx перед расширением файла, где xxx - это процент масштабирования, применяемый к ресурсу, например myimage.scale-200.png. Затем на изображения можно ссылаться в коде или XAML без модификатора масштаба, например просто myimage.png. Платформа выберет ближайший подходящий масштаб актива на основе текущего DPI дисплея.
Если вы поместили файл изображения в папку UWP Assets, вы можете использовать следующий xaml. И обратите внимание, что цвет пустого файла iamge приложения xamarin по умолчанию - белый, нам нужно установить черный фон, чтобы выделить их.
<Grid BackgroundColor="Black">
<Image>
<Image.Source>
<OnPlatform x:TypeArguments="FileImageSource">
<On Platform="UWP" Value="Assets/LargeTile.png" />
<On Platform="iOS" Value="LargeTile.png" />
<On Platform="Android" Value="LargeTile.png" />
</OnPlatform>
</Image.Source>
</Image>
</Grid>
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.