Xamarin Forms - GestureRecognizer больше не работает в iOS - PullRequest
1 голос
/ 01 апреля 2020

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

Сегодня я обновил многие из своих пакетов NuGet, которые потенциально могли вызвать проблему, но я откатил все назад и проблема все еще произошла И сегодня я обновил свою Visual Studio до новой версии 16.5.2, которая была только что выпущена вчера. Это привело к тому, что новая версия Xamarin. iOS была передана в MA C, который компилирует код. Не уверен, является ли это причиной проблемы.

Вот очень простой пример:

<StackLayout Padding="0,0,0,0" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
  <Frame VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" BackgroundColor="Black">
    <Frame.GestureRecognizers>
      <TapGestureRecognizer Tapped="BtnTest_Clicked" />
    </Frame.GestureRecognizers>

    <Label TextColor="White" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" Text="TESTING" />
  </Frame>
</StackLayout>

Моя функция BtnTest_Clicked никогда не вызывается.

Таким образом, обновление чего-либо заставил это перестать работать, но я не могу понять, что. Любые идеи вообще ???

Вот мои установленные пакеты для моего iOS проекта:

<ItemGroup>
  <Reference Include="System" />
  <Reference Include="System.Xml" />
  <Reference Include="System.Core" />
  <Reference Include="Xamarin.iOS" />
</ItemGroup>
<ItemGroup>
  <PackageReference Include="Autofac">
    <Version>4.9.4</Version>
  </PackageReference>
  <PackageReference Include="Newtonsoft.Json">
    <Version>12.0.3</Version>
  </PackageReference>
  <PackageReference Include="Refit">
    <Version>4.8.14</Version>
  </PackageReference>
  <PackageReference Include="Rg.Plugins.Popup">
    <Version>1.2.0.223</Version>
  </PackageReference>
  <PackageReference Include="RtspClientSharp">
    <Version>1.3.3</Version>
  </PackageReference>
  <PackageReference Include="Sharpnado.Presentation.Forms">
    <Version>1.4.0</Version>
  </PackageReference>
  <PackageReference Include="Telerik.UI.for.Xamarin">
    <Version>2019.3.1023.1</Version>
  </PackageReference>
  <PackageReference Include="Xam.Plugin.Media">
    <Version>4.0.1.5</Version>
  </PackageReference>
  <PackageReference Include="Xamarin.Essentials">
    <Version>1.5.2</Version>
  </PackageReference>
  <PackageReference Include="Xamarin.FFImageLoading">
    <Version>2.4.11.982</Version>
  </PackageReference>
  <PackageReference Include="Xamarin.FFImageLoading.Forms">
    <Version>2.4.11.982</Version>
  </PackageReference>
  <PackageReference Include="Xamarin.Forms" Version="4.4.0.991864" />
  <PackageReference Include="XLabs.Forms">
    <Version>2.0.5782</Version>
  </PackageReference>
</ItemGroup>

1 Ответ

0 голосов
/ 22 апреля 2020

Теперь эта проблема исправлена, вы можете обновить Xamrin Forms до последней версии 4.5.0.617 , тогда она будет работать в iOS 13.4.

<Frame VerticalOptions="FillAndExpand"
        HorizontalOptions="FillAndExpand"
        BackgroundColor="Black"
        IsVisible="True"
        x:Name="myframe">
    <Frame.GestureRecognizers>
        <TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped" />
    </Frame.GestureRecognizers>

    <Label TextColor="White"
            HorizontalOptions="FillAndExpand"
            VerticalOptions="FillAndExpand"
            Text="TESTING" />
</Frame>

Вывод :

2020-04-22 10:01:06.226721+0800 AppFrameRenderer.iOS[37914:1276862] TapGestureRecognizer_Tapped
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...