每次新迭代时的 UITextField 输入
Posted
技术标签:
【中文标题】每次新迭代时的 UITextField 输入【英文标题】:UITextField input every time new iteration 【发布时间】:2014-09-07 06:55:01 【问题描述】:我是 Objective-C 和 Xcode 的新手,我有一个问题,我尝试在 Internet 上查找,但没有找到任何东西。 我有“游戏”,我有一个带有两个文本字段、按钮和文本视图的屏幕。用户输入整数值并点击按钮。点击按钮后,会调用一些函数(或方法)。输入按钮后调用的方法:
- (IBAction)okButtonTapped:(id)sender
int save1=100;
int save2=100;
int save13=1;
int save22=1;
int save12=1;
int save23=1;
while(save13 !=0 && save23 !=0)
[self yourturn:&save1 heap2:&save2];
save12= save1;
save22=save2;
[self compturn:&save12 heap2:&save22];
save13=save12;
save23=save22;
save1=save13;
save2=save23;
这里调用了一些方法。在这种方法中,我使用这段代码来保存用户输入的文本字段中的值:
_heapNumberInt=[self.heapNumberTextField.text intValue];
_thingsNumberInt=[self.thingsNumberTextField.text intValue];
问题是当while循环有新的迭代时,如何让用户在文本字段中输入新的值? 对不起我的英语(这不是我的母语)和我的长问题。
所有可以下载的项目here
附: “游戏”非常简单:有 2 个堆,每个堆有 100 个东西,用户选择轮到他,然后他输入值:堆数(1 或 2 个堆)和他想从堆中取出的东西的数量。然后轮到电脑了。更宽松的是不能从任何堆中取出东西的人。它是real game called NIM。(但在这里我只做了2个堆(不是3个))。
【问题讨论】:
UITextField focus 的可能副本 【参考方案1】:可能你需要阅读事件处理指南
https://developer.apple.com/library/ios/documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009541
关于这个问题,为了将焦点设置到你应该使用的输入
[self.heapNumberTextField becomeFirstResponder];
更新: 据我了解,您需要:
_heapNumberInt = [self.heapNumberTextField.text intValue]; // get value
[self.heapNumberTextField setEditable:NO]; // disable editing to calculate
[self calculate];
self.heapNumberTextField.text = @""; // clean UITextField
[self.heapNumberTextField setEditable:YES]; // allow editing
[self.heapNumberTextField becomeFirstResponder]; // set focus to the textfield
【讨论】:
我的意思是现在用户只能输入一次值,然后在每次迭代中使用这个值,但我需要让用户在轮到计算机后输入不同的值以上是关于每次新迭代时的 UITextField 输入的主要内容,如果未能解决你的问题,请参考以下文章