Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何使用UIStepper控制全局变量?_Ios_Objective C - Fatal编程技术网

Ios 如何使用UIStepper控制全局变量?

Ios 如何使用UIStepper控制全局变量?,ios,objective-c,Ios,Objective C,我试图通过UIStepper控制num变量,但当我按下增加按钮时 它总是从0开始计数,而不是从10开始计数 我很好奇我的代码遗漏了什么 提前感谢您的任何意见 #import "ViewController.h" int num = 10; @interface ViewController () @property (weak, nonatomic) IBOutlet UILabel *myLabel; - (IBAction)myStepper:(UIStepper *)sender;

我试图通过
UIStepper
控制
num
变量,但当我按下增加按钮时

它总是从0开始计数,而不是从10开始计数

我很好奇我的代码遗漏了什么

提前感谢您的任何意见

#import "ViewController.h"

int num = 10;

@interface ViewController ()

@property (weak, nonatomic) IBOutlet UILabel *myLabel;
- (IBAction)myStepper:(UIStepper *)sender;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    _myLabel.text = [NSString stringWithFormat:@"%i", num];
}

- (IBAction)myStepper:(UIStepper *)sender {
    num = [sender value];
    _myLabel.text = [NSString stringWithFormat:@"%i", num];
}
@end

您从未将步进器的值设置为
num
。在Interface Builder的属性检查器中进行设置,或为步进机创建一个出口:

@property (weak, nonatomic) IBOutlet UIStepper myStepper;
然后在
-viewDidLoad
中,如下设置:

self.myStepper.value = num

另外,我建议不要使用全局变量。我会为
num
创建一个属性。

我的建议。。。根本不要使用全局变量。总有比全局变量更好的方法来处理问题。使用它们通常是设计结构不良的原因(或症状)。你想用全局变量做什么?也许我可以帮助改进设计,同时使用步进器:不管怎样,你应该在头文件中声明你的整数。