有没有可以测试手速的软件,我的第一个Mac小程序 — 手速测试器

0dfb44f208c9cd2f8760ac5d584f6a0c.png

没有什么能阻挡,我对自由的向往。

缘由

之所以做这个小程序是因为我想测一下自己的手速(从a打到z需要的时间),在网上没有找到测试的网页和软件,于是我就自己尝试做了一个,结果成功从iOS码农转型到macOS码农。

36f964d1fd35a587ef5fa259a1102f28.png

七夕还在敲代码,我很快乐

界面是这样的

d729a6130407ac0eba3c9be52d669f66.png

一个输入框,一个label,一张强势的图片。

思路

监听用户的输入,输入a开始计时,输入z结束计时。

代码

@interface ViewController ()@property (weak) IBOutlet NSTextField *textField;

@property (weak) IBOutlet NSTextField *label;

@property (nonatomic ,strong) NSTimer *timer;

@property (nonatomic ,assign) float hundredthSecond;

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view.

_hundredthSecond = 0;

self.timer = [NSTimer scheduledTimerWithTimeInterval:0.01 repeats:YES block:^(NSTimer * _Nonnull timer) {

_hundredthSecond ++;

//NSLog(@"开始了%f", hundredthSecond);

self.label.stringValue = [NSString stringWithFormat:@"已耗时:%.2f秒", _hundredthSecond / 100];

}];

self.timer.fireDate = [NSDate distantFuture];

}

- (void)controlTextDidChange:(NSNotification *)notification {

NSTextField *textField = [notification object];

//NSLog(@"controlTextDidChange: stringValue == %@", [textField stringValue]);

NSString *str = textField.stringValue.lowercaseString;

// 输入“a”开始计时

if (str.length > 0 && [[str substringFromIndex:str.length-1] isEqualToString:@"a"]) {

_hundredthSecond = 0;

// 开启timer

self.timer.fireDate = [NSDate distantPast];

}

// 输入“z”结束计时

if (str.length > 0 && [[str substringFromIndex:str.length-1] isEqualToString:@"z"]) {

// 结束timer

self.timer.fireDate = [NSDate distantFuture];

// 后26个字母正确则完成

if (str.length >= 26 && [[[str lowercaseString] substringFromIndex:str.length - 26] isEqualToString:@"abcdefghijklmnopqrstuvwxyz"]) {

}else {

NSLog(@"未正确输入26个字母");

self.label.stringValue = [NSString stringWithFormat:@"未正确输入26个字母(耗时:%.2f)", _hundredthSecond / 100];

}

_hundredthSecond = 0;

}

}

我的最好成绩

6d1e10e3493252372d0ded5ae0385192.png

不得不说,这手速相当快了,

不负单身二十余年。

小程序地址

点此获取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值