我正在创建一个应用程序,当mp3文件读取一些文本时,我应该突出显示正在阅读的文本。我可以想出某种方法来做到这一点,但它看起来有点单调乏味,可能不是最好的方法。我的想法是手动计时每个单词,然后在某一点突出显示它。我不确定这是不是最佳/唯一的方法吗?有谁知道任何可以帮助解决这个问题的框架或开源项目?或者有关如何做到这一点的任何建议。
任何帮助都会很棒!谢谢!
答案 0 :(得分:0)
假设
labelWithTheCompleteText
是UILabel
,带有完整的文字
wordJustRead
是读取的单词
当你的mp3文件读取一个单词时,必须调用下面的代码。
//appending a blank space assuming that a blank space will follow after each word
NSString *stringToBeHighlighted = [NSString stringWithFormat:@"%@ ", wordJustRead];
NSMutableAttributedString *anAttributedString = [[NSMutableAttributedString alloc] initWithString:stringToBeHighlighted];
[anAttributedString addAttribute:NSBackgroundColorAttributeName value:[UIColor lightGrayColor] range:NSMakeRange(0, anAttributedString.length)];
labelWithTheCompleteText.attributedText = anAttributedString;
希望这可以帮助你..我没有尝试过这个,但如果你能找到你的mp3文件读取的单词..这应该有效。 :)