Plugin.FormsGesture

 jvxiang   2018-07-03 15:51   506 人阅读  0 条评论

1.Plugin.FormsGesture介绍

Plugin.FormsGesture是一个Xamarin.Forms用的支持Android、IOS、UWP的开源的点击与移动监听插件。

2.Plugin.FormsGesture使用

Nuget下载插件,或者GitHub下载源码自行编译后使用。

Nuget名字:Plugin.FormsGesture

GitHub地址:https://github.com/j4587698/FormsGusture

Plugin.FormsGestrue内包含两个Command(TapCommand、PanCommand),目前只支持Command的模式,不支持Event的模式。

TapCommand的参数为Point,是点击相对于控件的相对位置。

PanCommand的参数为Gesture.PanEventArgs,内有四个属性:

  1. StartPosition:滑动开始的位置。
  2. CurrentPosition:当前滑动到的位置。
  3. Status:当前滑动的状态。
  4. TotalMove:总移动距离。

PS:位置都是相对于控件的相对位置。

简单用法:

Xaml中可以在头上添加引用

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:TouchTest" <span style="color: #ff0000;">xmlns:shared="clr-namespace:Plugin.FormsGesture.Shared;assembly=Plugin.FormsGesture"</span> x:Class="TouchTest.MainPage">

使用时
 <Label Text="{Binding TapCount}" HorizontalOptions="Center" VerticalOptions="CenterAndExpand" <span style="color: #ff0000;">shared:Gesture.TapCommand="{Binding TapCommand1}"</span>/>

cs文件中使用直接
public MainPage() { InitializeComponent(); BindingContext = new MainPageViewModel(); //<span style="color: #ff0000;">Plugin.FormsGesture.Shared.Gesture.SetTapCommand(lbMain, new Command(args => { }));</span> }

具体用法可以参考示例https://github.com/j4587698/FormsGusture/tree/master/TouchTest/TouchTest

3.目前的BUG

Demo的IOS无法正常显示Status,每次显示都是错的,StartPosition显示不及时。但是从Debug的Log来看是正常的,只是显示问题。具体IOS的问题还需要进一步确认。

本文地址:https://www.jvxiang.com/plugin-formsgesture.html
版权声明:本文为原创文章,版权归 jvxiang 所有,欢迎分享本文,转载请保留出处!
NEXT:已经是最新一篇了

 发表评论


表情