1

Objective C的答案也很好。这是在 C# Monotouch 中。

目前我正在使用此代码向我的 WebView 添加 2 个手势(左/右)。工作正常。

我可以将其组合成更少的代码以指示两个手势执行相同的操作吗?

//LEFT
UISwipeGestureRecognizer sgr = new UISwipeGestureRecognizer ();
sgr.AddTarget (this, MainViewController.MySelector);
sgr.Direction = UISwipeGestureRecognizerDirection.Left;
sgr.Delegate = new SwipeRecognizerDelegate ();
this.View.AddGestureRecognizer (sgr);

//RIGHT
UISwipeGestureRecognizer sgrRight = new UISwipeGestureRecognizer ();
sgrRight.AddTarget (this, MainViewController.MySelector);
sgrRight.Direction = UISwipeGestureRecognizerDirection.Right;
sgrRight.Delegate = new SwipeRecognizerDelegate ();
this.View.AddGestureRecognizer (sgrRight);
4

2 回答 2

2

你可以试试这个版本,它更短并且利用了 C# lambdas:

UISwipeGestureRecognizer sgr = new UISwipeGestureRecognizer ();
sgr.Action = delegate {
   // Your handler goes here
});
sgr.Direction = UISwipeGestureRecognizerDirection.Left | 
                UISwipeGestureRecognizerDirection.Right;
this.View.AddGestureRecognizer (sgr);
于 2011-01-02T14:03:17.013 回答
0

在 ObjC 中,您将使用按位或运算符来指示将它们都包含在内。但是,无论您使用哪种语言,您都会很幸运能够从任何有经验的 iOS 开发人员那里获得很多支持。

于 2011-01-02T03:45:58.737 回答