gpt4 book ai didi

ios - 当弹出窗口消失时,保持 UITextView 中的文本突出显示

转载 作者:可可西里 更新时间:2023-11-01 06:06:20 25 4
gpt4 key购买 nike

我有一个 UIPopover,它显示一个普通 View ,其中包含一个填充了一些文本的 UITextView。我设法突出显示了文本。当弹出窗口被关闭并重新打开时,突出显示消失。即使应用程序关闭,我也想保持文本突出显示。有什么想法可以实现吗?
我使用的代码如下:

    - (void)highlight {

NSRange selectedRange = self.textViewAll.selectedRange;

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]
initWithAttributedString:self.textViewAll.attributedText];

[attributedString addAttribute:NSForegroundColorAttributeName
value:[UIColor redColor]
range:selectedRange];

// [highlightedRange addObject:];
// This is where i tried to save each location and length in a mutable array but didn't work
[highlightedRangeLocation insertObject:[NSNumber numberWithInteger:selectedRange.location] atIndex:indexOfHighlight];
[highlightedRangeLength insertObject:[NSNumber numberWithInteger:selectedRange.length] atIndex:indexOfHighlight];

///////////////////////////////////////////////////////////////////////////////
self.textViewAll.attributedText = attributedString;

indexOfHighlight ++ ;
}
- (void)viewDidLoad {
UIMenuItem *highlightMenuItem = [[UIMenuItem alloc] initWithTitle:@"Highlight" action:@selector(highlight)];
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObject:highlightMenuItem]];

float sysVer = [[[UIDevice currentDevice] systemVersion] floatValue];

if (sysVer >= 8.0) {
self.textViewAll.layoutManager.allowsNonContiguousLayout = NO;
}


}

谁能指出如何从这里继续?

编辑 1:

关闭弹窗的代码:

- (IBAction)closeFun:(id)sender {

// self.popoverPresentationController set

[self dismissViewControllerAnimated:YES completion:nil];
// [self dismis]

}

最佳答案

你不能在弹出窗口消失时将突出显示的文本范围保存在 [NSUserDefaults standardUserDefaults] 中,并在弹出窗口重新出现时检索它吗?

关于ios - 当弹出窗口消失时,保持 UITextView 中的文本突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28720613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com