将参数从一个IBAction传递到另一个IBAction

问题描述:

下面的代码显示一个数组中的随机单词(generateWord),然后根据按下哪个按钮接受一个字母作为输入。我希望在letter中猜出,能够在randomWord变量的内容中搜索输入字母。我知道如何搜索,但我无法访问变量。达到此目的的最佳方法是什么?将参数从一个IBAction传递到另一个IBAction

- (IBAction)generateWord:(id)sender { 
    int arraycount=[wordList count]; 
    int indexchoice=(arc4random() % arraycount); 
    NSString *randomWord = [wordList objectAtIndex:indexchoice]; 
    self.wordResult.text=[NSString stringWithFormat:@"word: %@ ",randomWord]; 
} 

- (IBAction)letterGuessed:(id)sender { 
    NSString *letter=[sender titleForState:UIControlStateNormal]; 
    [sender setEnabled:NO]; 

} 

你做 “的NSString * randomWord” 伊娃,所以在 “generateWord:” 你设置randonWord(即 “randomWord = [单词表objectAtIndex:indexchoice]”),然后randomWord现在可当“letterGuessed: “被调用。

+0

我该怎么做呢?它是否与声明变量'@public'有关? – user1418214 2012-07-16 04:36:32

2种方式..

1)拥有的RandomVariable的一个全球性的副本,并更新它的每被点击一次generateWord ..

2),或者你可以通过简单地获取字符串内容规避上述方法来自wordResult textview/textfield你已经创建了

NSString *randomString = self.wordResult.text 
+0

出于好奇,OOP中不是全局变量吗?我对此很陌生,但我认为我在某处读过它。 – user1418214 2012-07-16 04:37:57

+0

不一定..只要它服务一个重要的目的,你可以使用全局变量.. – 2012-07-16 07:34:26