我的ImageCircle正在使用xamarin.forms调整自身大小

时间:2017-09-06 19:25:03

标签: xaml xamarin layout xamarin.forms

我正在使用ImageCircle插件用于xamarin表单 当图片是一种正方形时,它有时效果很好...... 但是,当它是一个矩形时,我的图像被调整大小并且它不是我计划的 我该怎么处理图像停止调整大小?

我的代码

        <controls:CircleImage WidthRequest="75" HeightRequest="75" Grid.Row ="0" Grid.Column="1" Source="cadastrarPhoto.png"  x:Name="cadastrar_foto_perfil">

我看到了一个固定的高度和宽度,但它并没有解决我的问题,也许是因为这个圆形图像是一个网格的孩子,它的祖父(笑)是一个相对的布局,但我真的不知道WidthRequest是否会因此而改变......

它应该如何

enter image description here

当图像是矩形时的情况:

enter image description here

EDIT --------------------------------------------- 我把它放在一个Stach布局中,我将Aspect定义为合适...它帮助但没有解决......

 <StackLayout Orientation="Horizontal" HorizontalOptions="Center" WidthRequest="75" HeightRequest="75" Grid.Row="0" Grid.Column="1">
      <controls:CircleImage Aspect="AspectFit" VerticalOptions="EndAndExpand" HorizontalOptions="EndAndExpand" Source="cadastrarPhoto.png" x:Name="cadastrar_foto_perfil">
        <controls:CircleImage.GestureRecognizers>
          <TapGestureRecognizer Tapped="ChamaPickerImage"/>
        </controls:CircleImage.GestureRecognizers>
      </controls:CircleImage>
    </StackLayout>

3 个答案:

答案 0 :(得分:0)

我改变了我正在使用的api。 现在我使用ffimage

答案 1 :(得分:0)

设置HorizontalOptions="EndAndExpand"是导致您出现问题的原因。

相反,请尝试将HorizontalOptionsVerticalOptions都设置为不会扩展的值(开始,居中,结束)

注意:我注意到您实际上必须将HorizontalOptions显式设置为不会扩展的内容,以使iOS避免拉伸CircleImage。只需将其保留为空白将默认拉伸图像。

答案 2 :(得分:0)

在图像中,将其设置为“开始”,“居中”或“结束”,而不是Horizo​​ntalOptions =“ EndAndExpand”或VerticalOptions =“ EndAndExpand”。

默认情况下,如果将其设置为“ xxExpand”或根本不设置,则Xamarin iOS会扩展图像...