@[ios之路](一个OC小程序点名字)
#import “ViewController.h”
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@property (nonatomic, strong) NSArray *namesArray;
@property (nonatomic, assign) NSTimer *timer;
@end
@implementation ViewController
/*
点击图标
加载程序 —> stroyboard加载主界面 -> 对应的代码里面去加载配置的界面
*/
//用于手动搭建界面 准备工作 准备好数据
-
(void)viewDidLoad {
[super viewDidLoad];//需要使用数组保存名单 给一个属性赋值
self.namesArray = @[@“张三”,@“李四”,@“王五”];//NSLog打印一个对象使用%@
//NSLog(@"%@", self.namesArray);
} -
(IBAction)startButtonDidClicked:(UIButton *)sender {
//设置按钮的标题为stop
//在OC里面访问方法 使用【哪个对象 方法】;
//根据按钮的标题来切换状态if ([sender.titleLabel.text isEqualToString:@“start”]) {
[sender setTitle:@“stop” forState:UIControlStateNormal];
//使用定时器来完成一定时间间隔的任务
self.timer = [NSTimer scheduledTimerWithTimeInterval:0.1 repeats:YES block:^(NSTimer * _Nonnull timer) {
//执行的代码
//1.随机产生一个随机数
int index = arc4random() % 3;
//2.获取数据源里面index对应的名字
NSString *name = self.namesArray[index];
//3.显示到label上
self.nameLabel.text = name;
}];
}else{
[sender setTitle:@“start” forState:UIControlStateNormal];
[self.timer invalidate];
}
}
@end
-
(IBAction)startButtonDidClicked:(UIButton *)sender {
//从终端打印相关信息 打印的是字符串对象
NSLog(@"…");
//设置按钮的标题为stop
//在oc中访问方法,使用[哪个对象 方法]
//根据按钮的标题来切换状态
if ([sender.titleLabel.text isEqualToString:@“Start”]) {
[sender setTitle:@“Stop” forState:UIControlStateNormal];
//不能用for循环,因为计算机1s内执行上千条指令,反应不过来
//使用一个定时器来完成一定时间间隔的任务
self.timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(changeName) userInfo:nil repeats:YES];
}else{
[sender setTitle:@“Start” forState:UIControlStateNormal];
//关闭定时器
[self.timer invalidate];
}
} -
(void)changeName{
//执行的代码
//1.产生一个随机数
int index = arc4random()%3;
//2.获取数据源index中对应的名字
NSString *name = self.namesArray[index];
//3.将名字显示到label上
self.nameLabel.text = name;
}