2016-04-21 40 views
0

對於原型,我期望創建一個不可見的交互區域。創建一個在swift中可互動的隱形視圖

  • 如果我將alpha設置爲0,則不能與它進行交互。
  • 如果將其設置爲 隱藏,它也不會收到手勢事件。
+0

怎麼樣_不創建視圖,只是跟蹤手勢?只要你想顯示它,你可以在你追蹤的位置創建它。 – Darko

回答

3

你爲什麼要使用此視圖,相反,你可以只使用方法UIButton並將幀設置爲當前視圖的幀&將其背景色設置爲clearColor,如下所示,

self.invisibleButton.backgroundColor = [UIColor clearColor]; 

這將執行相同的操作&減少一些小工作,如添加「點按」手勢併爲視圖設置一些屬性(如果使用視圖)。

+0

我想用clearColor更優雅,謝謝! – Pbk

0

我發現的最佳解決方案是將背景顏色設置爲不可見的顏色。你看不到按鈕,但你可以與它交互。

在init我把:

self.backgroundColor = UIColor.blueColor().colorWithAlphaComponent(0) 

有沒有什麼更好的方法來做到這一點?

0

創建一個UIView使用戶交互和明確的背景顏色

UIView *viewsample=[[UIView alloc]init]; 
viewsample.frame= CGRectMake(0, 0, 200, 200); 
viewsample.backgroundColor= [UIColor clearColor]; 
viewsample.userInteractionEnabled=YES; 
[self.view addSubview:viewsample]; 

UITapGestureRecognizer *tapSkip = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(iviewsampleClicked:)]; 
[viewsample addGestureRecognizer:tapSkip]; 

調用時觸及

-(void)iviewsampleClicked:(UIGestureRecognizer*)gesture{ 

}