0

我正在开发一款游戏。我有一堆坏人飞机攻击好人飞机。现在我希望用户能够手动选择向坏人飞机发射多少导弹。

我有一种方法可以添加一个包含 UISlider 的子视图来选择要发射多少导弹。

示例(代码流):

1)坏人,好人飞机相见。

2) 跳转到 UISlider 方法。

3) (>这里需要int继续程序<)

4) 用户在 UISlider 方法中选择数字并调用选择器。

5) UISlider 选择器 - (我如何回到位置 3?)

我的问题不是编程,而是逻辑。具体来说,将 UISlider 方法的 INT 返回到最初调用 UISlider 方法的代码位置的正确方法是什么?

能够重用相同的方法也很棒(游戏有很多坏人)。

4

2 回答 2

1

我认为没有返回 UISlider 值的好方法。

首先,正如 Abdullah Shafique 所说,您需要以编程方式为 UISLider 创建方法,例如:

[yourSlider addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventValueChanged];

然后,您可能必须在选择数字后调用所需的方法,例如:

- (void)valueChanged:(id)sender {
    UISlider *slider = (UISlider *)sender;
    int value = slider.value;

    [self shootMissles:value]; //This line will send the value of slider to the method below.
}

我对 INPUT 和 APPLE BASIC 不熟悉,但是 [self shootMissles:value] 行会将滑块值传递给您可以随心所欲地做任何事情的方法。例如:

 - (void)shootMissles:(float)numOfMissles {
     //code to shoot x number of missles based on UISlider value - be mindful 
     //that UISlider spits out float values, you will have to round to get whole numbers.
 }
于 2013-07-19T09:14:11.110 回答
0

IBAction UISlider:

- (IBAction)valueChanged:(id)sender {
    UISlider *slider = (UISlider *)sender;
    int value = slider.value;
}

编辑:添加 IBAction:

[yourSlider addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventValueChanged];
于 2013-07-18T18:23:50.890 回答