我想创建一个按钮,一次一个字地移动UITextView中的光标位置.从用户的角度来看,这与Mac OS X中的Option-Right Arrow相同,后者被定义为"转到插入点右侧的单词".
我已经找到了几种方法可以一次移动角色.你会如何修改它以一次移动一个单词?
- (IBAction)rightArrowButtonPressed:(id)sender
{
myTextView.selectedRange = NSMakeRange(myTextView.selectedRange.location + 1, 0);
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的任何建议.
谁能告诉我如何避免因将图像粘贴到UITextView而导致崩溃?
我的应用程序中有UITextView,允许对属性文本进行一些基本编辑(iOS 6).用户发现他们可以从网页复制文本和图像的组合,然后切换到我的应用程序并使用UITextView菜单>粘贴命令它将使应用程序崩溃.我可以重现它,但我很难过该怎么做.崩溃的日志如下所示:
*** Assertion failure in -[NSHTMLReader _addAttachmentForElement:URL:needsParagraph:usePlaceholder:], /SourceCache/UIFoundation_Sim/UIFoundation-78/UIFoundation/TextSystem/NSHTMLReader.m:1478
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Unable to find missing_image.tiff!'
Run Code Online (Sandbox Code Playgroud)
当他们在另一个应用程序中使用copy命令时,我无法阻止用户选择图像.我也不想在我的应用程序中禁止粘贴.
如何在保持格式化的同时,根据预定义的分隔符获取现有的NSAttributedString并将其划分?看起来componentsSeparatedByString似乎不会在NSAttributedString上运行.
我当前的解决方法在正确的点生成拆分,但只输出NSString.因此失去格式.
NSData *rtfFileData = [NSData dataWithContentsOfFile:path];
NSAttributedString *rtfFileAttributedString = [[NSAttributedString alloc] initWithData:rtfFileData options:@{NSDocumentTypeDocumentAttribute:NSRTFTextDocumentType} documentAttributes:nil error:nil];
NSString *rtfFileString = [rtfFileAttributedString string];
NSString *importSeparator = @"###";
// Wish I could do this
// NSArray *separatedArray = [rtfFileAttributedString componentsSeparatedByString:importSeparatorPref];
NSArray *separatedArray = [rtfFileString componentsSeparatedByString:importSeparatorPref];
NSLog( @"Separated array: %@", separatedArray );
Run Code Online (Sandbox Code Playgroud) 有人可以帮助我将特殊字符转换为可以在 RTF 文件中正确表示的内容吗?
我正在将存储在 iPad 上的字符串中的文本输出为使用 NSASCIIStringEncoding 的 RTF 文件。到现在为止还挺好。我忽略了成功做的是考虑特殊字符(例如波浪号、元音变音、重音等)。对不起罗!
最通用的 RTF 格式似乎需要带有代码页转义的 8 位文本编码(反斜杠后面的两个十六进制数字)。所以 n 与波浪号 (ñ) 将是 \'f1。
我想到的唯一解决方案是转换为 NSUTF8StringEncoding,然后使用 stringByReplacingOccurrencesOfString,但是有很多字符,必须手动替换每个字符似乎很乏味。有没有更有效的方法可以逃避我?(双关语):)
感谢您的任何建议。
有人可以教育我为什么以下不起作用?该按钮永远不会设置为选中状态.
[self.boldButton setSelected:isBold];
Run Code Online (Sandbox Code Playgroud)
如果我用if else语句替换上面的代码就行了.我也可以将setSelected值更改为1或0,而不是YES或NO,它仍然可以正常工作.
if (isBold)
{
[self.boldButton setSelected:YES];
}
else
{
[self.boldButton setSelected:NO];
}
Run Code Online (Sandbox Code Playgroud)
所以我有一个工作项目,但我不明白为什么这两个实现不能提供相同的结果.谢谢.
FWIW - 我用另一种方法测试粗体.虽然如果测试有缺陷,我看不出第二种方法如何工作,而第一种方法仍然没有.
- (BOOL)isBold
{
CTFontRef fontRef = (CTFontRef)CFBridgingRetain(self);
CTFontSymbolicTraits symbolicTraits = CTFontGetSymbolicTraits(fontRef);
return (symbolicTraits & kCTFontTraitBold);
}
Run Code Online (Sandbox Code Playgroud) 是否有我在创建 Apple 的 12 天应用程序中看到的“复制链接”按钮时缺少的服务或参数?
我可以通过允许出现“复制”按钮
UIActivityTypeCopyToPasteboard
Run Code Online (Sandbox Code Playgroud)
在我的 UIActivityViewController 中,并传递一个 URL
NSURL *activityURL = [NSURL URLWithString:@"http://www.mylink.com/"];
Run Code Online (Sandbox Code Playgroud)
功能正常,但按钮标题是“复制”,不如“复制链接”清晰。我想知道强制此标题是否是我错过的服务选项,或者需要定义自定义活动类型。据我所知,activityTitle 仅在您对服务方法进行子类化时才可用。
感谢您的任何见解。

ios ×4
ipad ×2
iphone ×2
uitextview ×2
boolean ×1
copy-paste ×1
crash ×1
cursor ×1
ios6 ×1
ios7 ×1
ios8 ×1
objective-c ×1
paste ×1
rtf ×1
uiactivity ×1
uibutton ×1