我可以将 UIImage 作为文本放在 textview 中,以便我可以在 ios 中将它们作为文本删除

Posted

技术标签:

【中文标题】我可以将 UIImage 作为文本放在 textview 中,以便我可以在 ios 中将它们作为文本删除【英文标题】:Can i place UIImage in textview as text so that i can delete them as text in ios 【发布时间】:2013-12-26 05:41:12 【问题描述】:

我必须在 UITextview 上放置表情符号、文本和图像,并且必须将它们全部放置为文本 这样我就可以将它们作为文本删除。它们将被调整为文本视图中的文本 任何帮助! UIImage 可以在文本中传输。然后将该文本作为设置文本添加到 textview 图像将形成并显示在文本视图中。

<p>  i have tried to put emoji on text view and it works well
-(void)selectedFacialView:(NSString*)str

    NSLog(@"into selected facial view>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
    NSString *newStr;
    if ([str isEqualToString:@"delete"]) 

        if (EditableTextView.text.length>0) 
            if ([[Emoji allEmoji] containsObject:[EditableTextView.text      substringFromIndex:EditableTextView.text.length-2]]) 

                newStr=[EditableTextView.text substringToIndex:EditableTextView.text.length-2];
            else

                newStr=[EditableTextView.text substringToIndex:EditableTextView.text.length-1];
            
            EditableTextView.text=newStr;
        

    

    else
    
        [GlobalInstance.LibCamTopImgArray addObject:str];
        NSString *newStr=[NSString stringWithFormat:@"%@%@",EditableTextView.text,str];
        [EditableTextView setText:newStr];

    
    NSLog(@"  end of selectedFacialView");

</p>

【问题讨论】:

【参考方案1】:

考虑使用DTCoreText项目中的DTAttributedTextView控件

【讨论】:

【参考方案2】:

简短的回答是“您不能在文本中放置图像”。 复杂的答案是“你可以通过两种复杂的方式之一来做到这一点”。

    您可以使用图像创建自定义字体(如“表情符号”)。请注意,复制/粘贴在其他应用程序中效果不佳。 您可以创建自己的文本视图来显示和编辑文本。这是一项涉及文本定位、大小调整、绘图和字体测量以及“CoreText”框架研究的大量工作。但这是“诚实”的方式。

请注意,有些字体支持特殊符号。也许你可以完全避免使用图片。

【讨论】:

可以,使用 NSTextAttachments 我们可以在 ios7 中使用 NSTextAttachments 来实现。但是对于以前版本的 iOS,我什么也没找到

以上是关于我可以将 UIImage 作为文本放在 textview 中,以便我可以在 ios 中将它们作为文本删除的主要内容,如果未能解决你的问题,请参考以下文章

iOS - 如何将 UIImage 和 UILabel 作为页脚放在同一行?

试图将 UIView 放在 UIImageView 之上以突出显示 UIImage 的一部分

带有UIImage标题的导航栏

使用自动布局的 UIImage 旁边的 UILabel

如何将 UIView 的边框放在 UIImage 后面?

可以将TextView放在RadioGroup中。但是,这是好的做法吗?