首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更改操作-更改SKLabelNode

更改操作-更改SKLabelNode
EN

Stack Overflow用户
提问于 2015-04-12 09:49:25
回答 1查看 160关注 0票数 1

我正在使用Objective-C来制作一个iOS SpriteKit "GameScene“文件。我有一个SKLabelNode和一个UITextField来输入球员的名字。

怎样才能使UITextField值等于什么来将SKLabelNode更改为说“谢谢”+ UITextField值呢?

(我的代码):

代码语言:javascript
运行
复制
#import "GameScene.h"

@implementation GameScene

-(void)didMoveToView:(SKView *)view {
// Use Objective-C to declare all SpriteKit Objects
// inside the {parameters} of "didMoveToView" method:


// SKLabelNodes (SpriteKit Object) display "text".
// Objective-C object named *winner = SKLabelNode (SpriteKit Object)
SKLabelNode *winner = [SKLabelNode labelNodeWithFontNamed:@"Tahoma"];
winner.text = @"You Win!";
winner.fontSize = 65;
winner.fontColor = [SKColor blueColor];
winner.position = CGPointMake(500,500);
[self addChild:winner];


// UITextFields (SpriteKit Object) allow "text" input from users.
// Objective-C object named *textField = UITextField (SpriteKit Object)
UITextField *textField = [[UITextField alloc]
initWithFrame:CGRectMake(self.size.width/2, self.size.height/2+20, 200, 40)];
textField.center = self.view.center;
textField.borderStyle = UITextBorderStyleRoundedRect;
textField.textColor = [UIColor blackColor];
textField.font = [UIFont systemFontOfSize:17.0];
textField.placeholder = @"Enter your name here";
textField.backgroundColor = [UIColor whiteColor];
textField.autocorrectionType = UITextAutocorrectionTypeYes;
textField.keyboardType = UIKeyboardTypeDefault;
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
[self.view addSubview:textField];

}

-(void)update:(CFTimeInterval)currentTime {
/* Called before each frame is rendered */
}

@end
EN

回答 1

Stack Overflow用户

发布于 2015-04-12 10:05:42

您需要使用委托方法。具体来说

代码语言:javascript
运行
复制
- (void)textFieldDidEndEditing:(UITextField *)textField; 

要在创建textFeild时执行此操作,请添加以下代码行

代码语言:javascript
运行
复制
[textfield setDelegate:self]

还可以添加您在.h文件中休眠委派

代码语言:javascript
运行
复制
@interface ViewController : UIViewController <UITextFieldDelegate>

然后,当该代码被调用时,您会说在方法内部

SKLabelNode = [NSString stringWithFormat:@"Thanks %@",textField.text]

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29585081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档