我正在开发一个应用程序,需要实现以下功能:
1) 在文本视图中写入
2) 从文本视图中选择文本
3) 允许用户对所选文本应用加粗、斜体和下划线功能。
我已经开始使用NSMutableAttributedString来实现它。这对于加粗和斜体有用,但是只替换了文本视图的选定文本。
-(void) textViewDidChangeSelection:(UITextView *)textView
{
rangeTxt = textView.selectedRange;
selectedTxt = [textView textInRange:textView.selectedTextRange];
NSLog(@"selectedText: %@", selectedTxt);
}
-(IBAction)btnBold:(id)sender
{
UIFont *boldFont = [UIFont boldSystemFontOfSize:self.txtNote.font.pointSize];
NSDictionary *boldAttr = [NSDictionary dictionaryWithObject:boldFont forKey:NSFontAttributeName];
NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc]initWithString:selectedTxt attributes:boldAttr];
txtNote.attributedText = attributedText;
}
有人能帮我实现这个功能吗?
提前感谢。
UITextView
中的(自 iOS 6.0 起)。将allowsEditingTextAttributes
属性设置为YES
。 - rmaddytxtNote.allowsEditingTextAttributes = YES;
,但它和之前一样。 - Shah PaneritxtNote
不为nil
。 - rmaddy