2012-11-08 24 views

回答

8

cocos2d中沒有任何文字輸入控件,但您可以輕鬆添加的UIKit控制現場在cocos2d 2.0

[[CCDirector sharedDirector] view] addSubview:myTextField]; 

您可以使用UIAlertView中使用文本嵌入領域。

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:self cancelButtonTitle:@"Done" otherButtonTitles:nil]; 
alert.alertViewStyle = UIAlertViewStylePlainTextInput; 
[alert show]; 
//[alert release]; If not using ARC 

接收的事件從UIAlertView中回你實現UIAlertViewDelegate。在你的頭文件的委託協議添加到您的接口

@interface BTMyScene : CCLayer <UIAlertViewDelegate> 

然後在您的實現文件從您希望收到通知的委託協議添加任何的方法。你可能想這一個

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex 
{ 
    UITextField *textField = [alertView textFieldAtIndex:0]; 
    NSString *name = textField.text; 
} 

我建議你閱讀UIAlertViewUIAlertViewDelegate的文檔。您將看到所有可用的方法。

+0

警報方法正是我正在尋找的。還有一件事,我將如何從文本字段訪問字符串以存儲在變量中,並且當用戶點擊完成按鈕時會觸發一個事件,以便我可以捕獲並在按下時執行某些操作? – Joey

+0

是的,你實現了UIAlertViewDelegate,然後你可以通過AlertView來訪問textfield –

+0

我從來沒有實現過自己的委託,你願意教我如何做? – Joey

相關問題