2016-08-25 51 views
2

我有一个UIScrollView,里面有一个UILabel。我需要检测UILabel的轻击手势事件。目前,它不工作。我是xamarin IOS新手,请帮忙。提前致谢。Xamarin IOS UILabel点击手势里面UIScrollView不工作

这里是我的代码

UILabel lViewallLabel = new UILabel(new CGRect((View.Bounds.Width/2) - 20, 270, View.Bounds.Width/2, 16)); 
lViewallLabel.Text = "VIEW ALL >>"; 
lViewallLabel.TextAlignment = UITextAlignment.Right; 
lViewallLabel.TextColor = UIColor.White; 
lViewallLabel.Font = UIFont.SystemFontOfSize(12f); 
lViewallLabel.AdjustsFontSizeToFitWidth = true; 
lViewallLabel.UserInteractionEnabled = true; 
UITapGestureRecognizer tgrLabel2 = new UITapGestureRecognizer(() => 
     { 
      UIAlertView myAlert = new UIAlertView(); 
      myAlert.AddButton("OK"); 
      myAlert.Message = "Label was tapped."; 
      myAlert.Title = "It worked!"; 
      myAlert.Show(); 
     }); 
lViewallLabel.AddGestureRecognizer(tgrLabel2); 
innerView.AddSubview(lViewallLabel); 

scrollView.AddSubview(innerView); 

回答

3

我使用下面的代码解决问题。代码中的细微变化,我已将UILabel直接添加到UIScrollView而不是innerview。

UITapGestureRecognizer singleTap = new UITapGestureRecognizer(); 
singleTap.CancelsTouchesInView = false; 
scrollView.AddGestureRecognizer(singleTap); 

scrollView.AddSubview(lViewallLabel); 

这个post帮我解决了这个问题。