Xamarin формы: изображение не отображается в идеальном круге
Я уже разместил вопрос по этой проблеме, никогда не получал никакого решения. Так что постить тот же вопрос с более подробной информацией и выводами.
Для круговых изображений я использую в своем проекте пакет nuam Xam.Plugins.Forms.ImageCircle, который отлично работает в Android и Windows, но показывает овальную форму в IOS, добавление скриншота ниже.
Добавлен ImageCircleRenderer.Init(); в AppDelegate.cs.
добавлено пространство имен xmlns:
xmlns:controls="clr-namespace:ImageCircle.Forms.Plugin.Abstractions;assembly=ImageCircle.Forms.Plugin.Abstractions"
<controls:CircleImage
HorizontalOptions="Start"
VerticalOptions="Start"
Margin="0,0,0,-5"
WidthRequest="50"
Aspect="AspectFill"
BorderColor="#1C7DB4"
BorderThickness="2"
HeightRequest="50" />
Теперь я обновил Xam.Plugins.Forms.ImageCircle до 2.0.2, и полученное изображение добавляется ниже:
заранее спасибо
1 ответ
Похоже, что вы отображаете круги в ListView
, который имеет фиксированную высоту ячеек по умолчанию. Кажется, что ваши клетки просто не достаточно высоки, чтобы дать CircleImage
пространство, которое им нужно. У вас есть два варианта, чтобы преодолеть это:
- Установите высоту ячеек на фиксированное значение, которое достаточно высоко.
- Я не знаю точного значения заполнения ячеек, поэтому вам придется немного поэкспериментировать. Может быть, начать с чего-то около 60
<ListView RowHeight="60" ...>
- Задавать
HasUnevenRows="true"
- Я считаю, что это автоматически исправит высоту строк, но это стоит затрат: это может оказать негативное влияние на компоновку вашего вида.
<ListView HasUnevenRows="true">