如何在Obj-C中键入字符并等待特定时间?

问题描述

| 我目前正在尝试在Obj-C中编写一个函数,该函数允许我将一个字符(输入到NSTextField中)键入,例如30毫秒,然后键入Nsstring的下一个字符。 例如;
Nsstring * st = @\"hello,world\";
NSTextField * tf;
char curr;
int index = 0;
int i;

for(i=0;i<[st length]; i++){
    curr = [st characteratIndex:index];
    index++;
    //Now append the char to the NSTextField tf;
    //Wait 30 milliseconds
}
    

解决方法

在单个函数中执行此操作将阻塞UI,除非您自己经历了运行Runloop的所有麻烦。惯用的解决方案是仅使用NSTimer。