0
基本上,我有一個主屏幕,其背景圖像和屏幕底部有三個菜單選項。當我這4個組件添加到RootViewController的的觀點,一切工作正常,但如果我這樣做UIButton在添加到子視圖時未收到觸摸,但在添加到主視圖時未收到觸摸
_mainContainer = [[UIView alloc] init];
self.view = _mainContainer;
_firstScreen = [[UIView alloc] initWithFrame:self.view.frame];
"some code here setting up the subviews"
[buttonLeft addTarget:self action:@selector(startGame) forControlEvents:UIControlEventTouchUpInside];
[_firstScreen addSubview:mainMenuBackground];
[_firstScreen addSubview:buttonLeft];
[_firstScreen addSubview:buttonMid];
[_firstScreen addSubview:buttonRight];
[_mainContainer addSubview:_firstScreen];
從本質上講,如果我直接添加一切_mainContainer,按鈕的工作,如果我把它添加到_firstScreen,然後添加_firstScreen他們不工作。
用戶交互上_firstScreen啓用。我稍後在我的應用程序中做了類似的事情,它工作正常。另外,不知道這有什麼關係,但儘管被橫向顯示屏幕,而在plist中所有選項被設置爲僅景觀,當我運行的過渡,像flipFromBottom(或任何其所謂的),我應用程序認爲,「底部」是屏幕在縱向顯示,直到我移動到我的應用程序中的另一組子視圖。 (所以基本上標題屏幕是螺絲釘)。
我到處尋找解決方案,希望我不會錯過一些基本的東西。
我剛剛注意到,爲簡單起見。所以現在我所做的只是將三個按鈕添加到子視圖,並將該子視圖添加到rootViewController視圖和按鈕仍然不起作用。 – user1500053 2012-07-05 14:09:42
什麼UIObject是你的子視圖? – Ranjit 2012-07-05 14:14:38
我已修復它。感謝Ranjit,雖然它與問題無關,但確實幫助我解決了這個問題。我回去編輯我的代碼來設置我的UIView _firstScreen的背景,但沒有出現。所以我意識到, _firstScreen = [[UIView alloc] initWithFrame:self.view.frame]; 實際上並沒有設置幀的大小。它仍然是0的0;我不完全確定爲什麼會出現這種情況,因爲_maincontainer的行爲與框架大小與屏幕大小相同。 – user1500053 2012-07-05 14:19:31