7.为Xamarin.Forms的图片控件添加手势

目前有两种手势可以使用,Tab和Pitch
在Xamarin里想使用手势并不麻烦,只要添加几行代码就可以了
先说下Tab吧,就是单击。(感觉和clicked事件差不多,但Image控件没有这个事件)

这些是主要代码,就是一个TabGestureRecongizer类的调用。

            var tapGestureRecognizer = new TapGestureRecognizer();
            tapGestureRecognizer.Tapped += (s, e) =>
            {
                image.Source = sour[i % sour.Length];
                i++;
            };
            image.GestureRecognizers.Add(tapGestureRecognizer);

这些事我的这个页面的全部代码:

public class Page2 : ContentPage
    {
        public Page2()
        {
            int i = 1;
            Title = "Page1";
            BackgroundColor = Color.Black;
            string[] sour = new string[]{ @"Assets\bd3a0fd5ad6eddc44c05759539dbb6fd506633c8.jpg",
            @"Assets\QQ截图20151122225011.jpg", @"Assets\11111.jpg", @"Assets\17c15ffbfbedab64455b9073f736afc378311ea2.jpg",
             @"Assets\2cf2f7227cb31c91d6cae2a4.jpg", @"Assets\4-hex.png"};
            Image image = new Image
            {
                Source= "bd3a0fd5ad6eddc44c05759539dbb6fd506633c8.jpg"
            };
            var tapGestureRecognizer = new TapGestureRecognizer();
            tapGestureRecognizer.Tapped += (s, e) =>
            {
                image.Source = sour[i % sour.Length];
                i++;
            };
            image.GestureRecognizers.Add(tapGestureRecognizer);
            Content = image;
        }
    }

运行图:(我使用的UWP应用来展示)

然后是Pinch
由于我是用的电脑调试的,没办法来模拟那个手势,主要就是用于图片的放大和缩小的
贴上主要的那部分代码吧

var pinchGesture = new PinchGestureRecognizer();
pinchGesture.PinchUpdated += (s, e) => {
  // Handle the pinch
};
image.GestureRecognizers.Add(pinchGesture);

你可能感兴趣的:(图片,Xamarin)