2012-05-11 51 views
0

所以我是一個新的ios開發人員,並正在開發我的第一個應用程序。我有一個統一的3D遊戲,我作爲一個xcode項目導出,我的目標是在訪問遊戲之前添加一個ios菜單。可以說,我正在爲此而苦苦掙扎。我看過一些斯坦福的教程(太棒了!),並閱讀了一些我認爲適用的教程,但我被卡住了。這裏是我得到的:ios按鈕不點擊 - noob問題

我劫持了main.m文件來加載myAppDelegate(而不是一個Unity)。 myAppDelegate然後加載myViewController的實例並將其作爲子視圖添加到窗口中。在myViewController中,我有:

-(IBAction) displayView:(id) sender{ 
UIAlertView *alert = [[UIAlertView alloc] 
initWithTitle:@"Button Pressed" 
message:@"You have pressed the Button view." 
delegate:nil 
cancelButtonTitle:@"OK" 
otherButtonTitles:nil]; 
[alert show]; 
[alert release]; 
} 

我只是想點擊按鈕時發出警報。我有在.h文件中定義的功能-(IBAction) displayView:(id) sender;

在事物的視圖方面,我添加了一個條目到我的plist文件,我的Main Nib File Base Name設置爲MainWindow。

然後在Interface Builder中的MainWindow.xib中,我已經從Library,myAppDelegate和myViewController添加了。對於myAppDelegate,我將myViewController添加爲viewController委託,窗口爲Window,參考插座爲文件所有者。對於myViewController,引用出口是myAppDelegate。 (說實話,這部分讓我困惑,它並沒有太多的必然結果給我的php web app背景。)

在myViewController.xib中,文件所有者是myViewController。收到的操作顯示從我的功能(displayView)到按鈕的鏈接。然後,爲了這個觀點,我打開了它,把它塗成紅色,並用一般的ios窗口小部件(按鈕,日期選擇器等)來散佈它。我將其中一個按鈕連接到displayView的內部。這就是我所做的一切,我在我的設備上加載了應用程序,並且確切地看到了我在視圖上放置的內容。但沒有什麼是棘手的。我期望貼上我的按鈕來顯示上面定義的警報。但是這並沒有發生。實際上沒有任何反應。所以我懷疑所有這些都是錯誤的。但按鈕甚至沒有壓抑?當我點擊它時,我會希望白色按鈕閃爍藍色(向下狀態)。此外,我期望日期選擇器(未掛鉤功能)在我與其交互時旋轉。

這就好像我的觸摸沒有被髮送到視圖。有沒有人知道我可能會做錯什麼?在此先感謝您的幫助!

+0

我想你在這裏有幾個問題,但其中之一是,一個警報視圖需要一個委託,因爲委託必須一直按住這個按鈕的方法。 (檢查uialertview協議)。 – Pochi

+0

使用TouchUpInside操作確保xib文件中的UIButton已連接到視圖控制器中的IBAction。 – danielbeard

+0

我想我已經在那裏了。右鍵單擊xib中的UIButton,TouchUpInside鏈接了「File's Owner:displayView」。那應該已經可以做你正在說的了,對吧? – Landon

回答

0

試試這個代碼:

-(IBAction) displayView:(id) sender{ 

UIAlertView * myAlert; 

myAlert = [[UIAlertView alloc]initWithTitle:@"Button Pressed" 
    message:@"You have pressed the Button view." 
    delegate:nil 
    cancelButtonTitle:@"OK" 
    otherButtonTitles:nil]; 

[myAlert show]; 
/* And make sure to have this action connected to your button in xib   
file */ 

}