web-dev-qa-db-fra.com

Comment remplir un bouton avec une image dans Xamarin Forms?

J'essaie de remplir un Button avec un Image. Le bouton réside dans une grille. Le problème est que l'image ne remplit pas complètement le bouton. J'ai également essayé d'utiliser le contrôle ImageButton.

Voici comment je construis mon U.I:

<Grid Grid.Row="1" Grid.Column="1" x:Name="VotingGrid" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
  <Grid.RowDefinitions>
    <RowDefinition Height="*" />
  </Grid.RowDefinitions>
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="45*" />
    <ColumnDefinition Width="10*" />
    <ColumnDefinition Width="45*" />
  </Grid.ColumnDefinitions>

  <Button Grid.Row="0" Grid.Column="0" Image="yay.png" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/>
  <Button Grid.Row="0" Grid.Column="2" Image="meh.png" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/>
</Grid>

Il ressemble actuellement à l'image ci-dessous, mais je voudrais l'image pour remplir mon bouton.

enter image description here

Toute aide serait appréciée!

17
Mirel Vlad

Essayez de placer une image au lieu du bouton.

Vous pouvez utiliser Appuyez sur Gesture Gesture Recognizer pour prendre des événements de clic.

Essayez quelque chose comme ceci:

<Image Source="tapped.jpg">
    <Image.GestureRecognizers>
        <TapGestureRecognizer
                Tapped="OnTapGestureRecognizerTapped"  />
  </Image.GestureRecognizers>
</Image>

Le code du gestionnaire d'événements

void OnTapGestureRecognizerTapped(object sender, EventArgs args) {
    var imageSender = (Image)sender;
    // Do something
    DisplayAlert ("Alert", "Tap gesture recoganised", "OK");
}

Reportez-vous à: Ajout d'un outil de reconnaissance de gestes par gestes du robinet

30
Vaikesh

Je ne l'ai pas utilisé moi-même mais peut-être pouvez-vous utiliser celui-ci de XLab

https://github.com/XLabs/Xamarin-Forms-Labs/wiki/ImageButton

1
Ahmad ElMadi