使用 DTCoreText 嵌入推文
Posted
技术标签:
【中文标题】使用 DTCoreText 嵌入推文【英文标题】:Embed tweet with DTCoreText 【发布时间】:2015-05-25 21:50:09 【问题描述】:我正在展示一个使用 DTCoreText 的 html 代码。到目前为止一切正常,但现在我在此 HTML 代码中收到嵌入的推文,但它们无法正常工作。 正如 Twitter 文档中所说,推文嵌入了块引用标签,这是我收到的一个示例:
<blockquote class="twitter-tweet" lang="fr">
<p>
Here is the official <a href="https://twitter.com/hashtag/SPECTRE?src=hash">#SPECTRE</a> teaser poster <a href="http://t.co/3cn3iM6tf1">pic.twitter.com/3cn3iM6tf1</a></div>— James Bond (@007) <a href="https://twitter.com/007/status/577877246809141248">17 Mars 2015</a>
</blockquote>
仅显示文本。 我以这种方式在 DTCoreText 中注册了一个新类:
[DTTextAttachment registerClass:[MyBlockquoteClass class] forTagName:@"blockquote"];
MyBlockQuoteClass 有这个构造函数:
- (id)initWithElement:(DTHTMLElement *)element options:(NSDictionary *)options
self = [super initWithElement:element options:options];
if (self)
NSLog(@"THIS IS MY ELEMENT %@", element);
NSLog(@"THESE ARE MY OPTIONS %@", options);
return self;
读取blockquote标签时调用构造函数,但options只有4个与字体颜色和大小相关的键,元素有很多属性但对我没用,几乎所有东西都是nil,没有孩子,只有get class="twitter-tweet" 和 lang="fr",但无法获取内容,因此我无法将块引用嵌入到 UIWebView 中。
我做错了什么?也许使用 DTCoreText 有更好的方法?
亲切的问候!
【问题讨论】:
【参考方案1】:为此,需要在 DTCoreText 中实现以下内容:
-
一种自定义标签处理程序从常规输出中隐藏标签内容的方法
让自定义 MyBlockquoteClass 发送连接的原始字符串内容
然后您可以在委托方法中为您自己的 Web 视图提供这些内容,从而为文本附件设置自定义视图。
-
您可能还希望将它与现代属性一起使用(以便它与 UIKit 兼容,例如 UITextView)
【讨论】:
以上是关于使用 DTCoreText 嵌入推文的主要内容,如果未能解决你的问题,请参考以下文章