Как заставить TapGestureRecognizer работать, нажав на изображение в xamarin 2019? - PullRequest
0 голосов
/ 07 января 2020

У меня есть этот код в моем xaml:

<Image Source="Record"
 WidthRequest ="200"
 HeightRequest="158">

   <Image.GestureRecognizers>
      <TapGestureRecognizer x:Name="ImgRecord"
                            Tapped="ImgRecord_Tapped"
                            NumberOfTapsRequired="1"/>
   </Image.GestureRecognizers>

</Image>

Это в моем cs:

        private async void ImgRecord_Tapped(object sender, EventArgs e)
        {

            try
            {
                //Code to execute on tapped event
                await Navigation.PushAsync(new Record());
            }
            catch (Exception ex)
            {
                throw ex;
            }

        }

выдает ошибку System.FormatException Message = Один из идентифицированных элементов был в недопустимом формате.

Когда я нажимаю img, мне нужно перенаправиться на другую страницу.

1 Ответ

0 голосов
/ 08 января 2020

выдает ошибку System.FormatException Message = Один из идентифицированных элементов был в недопустимом формате.

Поскольку вы не указали правильный формат исходного изображения для изображения. Источник изображения должен иметь вид a.png, b.jpg et c. Измените источник изображения, я использую следующий код и не вижу проблем.

  <Image
            HeightRequest="158"
            Source="check.png"
            WidthRequest="200">

            <Image.GestureRecognizers>
                <TapGestureRecognizer
                    x:Name="ImgRecord"
                    NumberOfTapsRequired="1"
                    Tapped="ImgRecord_Tapped" />
            </Image.GestureRecognizers>

        </Image>

Вот статья с изображением, которую вы можете посмотреть:

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/images?tabs=windows

Скриншот:

enter image description here

...