目前有兩種手勢可以使用,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);