Xamarin формирует пользовательскую форму рамки вокруг изображения - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть изображение в моем приложении с рамкой вокруг него, чтобы сделать изображение кругом. Мне нужна пользовательская форма для рамки, но я не могу понять, как получить эту точную форму.

Shape

(Пожалуйста, не обращайте внимания на дом внутри чертежа, он просто должен представлять изображение в Xamarin, мне нужен только контур, чтобы иметь форму).

Мне также не требуется, чтобы рамка имела цветную рамку, только форму.

Любая помощь будет оценена!

Вот мой код прямо сейчас для Frame + Image:

<Frame x:Name="PictureFrame" Padding="0" Margin="0" HorizontalOptions="Center" BorderColor="Transparent" WidthRequest="80" HeightRequest="80" HasShadow="False">
    <Image x:Name="Picture" Source="picture" Margin="0,0,0,0" Aspect="AspectFill"/>
</Frame>

1 Ответ

0 голосов
/ 08 ноября 2018

Вам, вероятно, придется создать собственный рендер для достижения того, что вы ищете. Например, в Android маска кадра на самом деле реализована с использованием более изящного пути, который вы можете контролировать по своему вкусу, если погрузитесь немного глубже в код.

Взгляните на FreshEssentials AdvancedFrame представление, которое почти имеет то, что вам нужно. Модификация, которую они сделали, заключается в том, что вы можете иметь острый угол в 90 градусов по обоим углам слева или справа. Вам просто нужно немного изменить этот код, чтобы закругленный угол был на всех, кроме верхнего левого угла.

То, что вам нужно изменить, это:

Советы:

В Android маска фона для рамки определяется классом Path .

В iOS используется класс UIBezierPath из инфраструктуры UIKit.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...