在我的程序中,我配置了一個UIView
以放置在多個UIBUtton
之間。這樣可以平移視圖並讓按鈕移動以及選擇按鈕本身。但是,當它位於此UIView
下方時,無法選擇按鈕。有人知道如何在這些條件下配置UIButton
的userInteractionEnabled
嗎?在UIVew下面的UIButton上啓用用戶交互?
1
A
回答
0
這種技術對我有效 - 警告:我只是在它沒有編譯或nuthin中輸入它作爲出發點。
- 創建按鈕,並將其放置在視圖層次結構的頂部(即他們通常交互和水龍頭回應,對UIView的頂部)
在創建按鈕 - 保持對其引用在一個數組中。
NSMutableArray * arrayOfPeskyButtons;
保持按鈕幀的記錄
NSMutableArray* arrayOfPeskyFrames = [NSMutableArray mutableArray]; for ((UIButton*)button in arrayOfPeskyButtons) { [arrayOfPeskyFrames addObject:[NSValue valueWithCGRect:button.frame]; }
當你的應用響應於UIView的一個動作 - 搖攝,或者如果您將其更改爲一個UIScrollView(可能是最好的BTW),然後將幀的按鈕相對應,以便它們看起來固定在用戶的位置上。
我已經使用這種技術來創建座標在滾動視圖之上的按鈕的「疊加」,它的工作方式非常出色。只需在scrollView委託方法中。
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
取注意到scrollviews的偏移,並調整每個按鈕的幀的相應取決於通過按鈕的陣列的偏移滾動視圖
CGPoint offset = scrollView.contentOffset;
迭代的和移動它們。
int index = 0;
for ((UIButton*)button in arrayOfPeskyButtons)
{
CGRect originalFrame = [[arrayOfPeskyFrames objectAtIndex:index]CGRectValue];
CGRect currentFrame = button.frame;
//adjust frame
//e.g.
currentFrame.origin.x = originalFrame.origin.x + offset.x;
button.frame = currentFrame.;
index++;
}
0
而不是更改UIButton的userInteractionEnabled的值,應該將UIView的userInteractionEnabled值設置爲UIButton的值爲no。
當UIView的userInteractionEnabled設置爲YES時,UIView會「吃光」事件。該按鈕將永遠不會收到任何事件。
+0
我知道它是這樣做的。也許我在我的問題上還不清楚。 'UIView'的'userInterActionEnabled'設置爲'true'是很重要的,所以它可以識別泛事件。 – Fitzy
相關問題
- 1. 動畫UIButton上的用戶交互
- 2. 在桌面上啓用用戶交互查看
- 3. 在沒有用戶交互的情況下調用addTarget中的UIButton選擇器
- 4. UIAlert上的用戶交互
- 5. 如何在編輯模式下啓用UITableViewCell contentView上的用戶交互?
- 6. 啓用用戶交互功能Javascript
- 7. 通過代碼禁用RoundedRect類型的UIButton的用戶交互
- 8. 在Windows上啓動應用程序在java中啓動用戶交互
- 9. 啓用未啓用用戶交互的文本選擇
- 10. 禁用TabBar上的用戶交互
- 11. 更新:與窗戶上的用戶登錄界面交互
- 12. 在我的應用程序中重新啓用用戶交互
- 13. 如何設置「啓用用戶交互」上UITextViews代碼
- 14. 如何在Disclosure Indicator上啓用用戶交互,但不在UITableViewCell上
- 15. UIView - 「啓用用戶交互」在父項上爲false但在子項上爲真?
- 16. 當網絡在ios設備中不可用時禁用UIButton的用戶交互
- 17. UIPageViewController內的UIButton交互
- 18. 如何在兩個重疊的UIView中啓用用戶交互?
- 19. 通過圖形API在Facebook頁面上查找用戶交互
- 20. C#用戶控件在父頁面上與控件交互
- 21. 圖形用戶界面交互
- 22. Android交互式用戶界面
- 23. UIScrollView用戶交互
- 24. 如何在沒有用戶交互的情況下在ASP.NET中啓動任務
- 25. 的UITextView的鏈接:禁用滾動,用戶交互啓用
- 26. 在iOS 7上的UIViewController上禁用子視圖用戶交互
- 27. php可以在沒有用戶交互的情況下啓動腳本以便與數據庫交互?
- 28. 如何在UITableView單元格中啓用用戶交互功能
- 29. 用戶交互在Identity Inspector,屬性檢查器中啓用?
- 30. JSP中的用戶交互
嘗試禁用該UIView上覆蓋按鈕的userInteraction。 –
我需要'userInteractionEnabled'將該視圖設置爲'true',這樣我才能爲其添加一個'UIPanGestureRecognizer'。 – Fitzy
如果此視圖是透明的,並且僅用於檢測泛手勢,那麼爲什麼不將按鈕放在視圖頂部? –