我有问题,我在我的iOS应用程序中使用MWFeedParser Rss阅读器,它运行良好,但我需要从我的饲料中获取图像。你能帮我吗?MWFeedParser - RSS与图像
Here is url of that MWFeedParser project: GitHub
我有问题,我在我的iOS应用程序中使用MWFeedParser Rss阅读器,它运行良好,但我需要从我的饲料中获取图像。你能帮我吗?MWFeedParser - RSS与图像
Here is url of that MWFeedParser project: GitHub
我在我的cellForRowAtIndexPath功能,这样,当电池显示
MWFeedItem *item = itemsToDisplay[indexPath.row];
if (item) {
NSString *htmlContent = item.content;
NSString *imgSrc;
// find match for image
NSRange rangeOfString = NSMakeRange(0, [htmlContent length]);
NSRegularExpression* regex = [NSRegularExpression regularExpressionWithPattern:@"(<img.*?src=\")(.*?)(\".*?>)" options:0 error:nil];
if ([htmlContent length] > 0) {
NSTextCheckingResult *match = [regex firstMatchInString:htmlContent options:0 range:rangeOfString];
if (match != NULL) {
NSString *imgUrl = [htmlContent substringWithRange:[match rangeAtIndex:2]];
NSLog(@"url: %@", imgUrl);
//NSLog(@"match %@", match);
if ([[imgUrl lowercaseString] rangeOfString:@"feedburner"].location == NSNotFound) {
imgSrc = imgUrl;
}
}
}
}
注意,我也忽略了图像,如果它有“Feedburner的”在其搜索图像中使用此避免feedburner类型图标的网址。
我也使用AFNetwork的类时,我显示出图像后
if (imgSrc != nil && [imgSrc length] != 0) {
[myimage setImageWithURL:[NSURL URLWithString:imgSrc] placeholderImage:[UIImage imageNamed:IMAGETABLENEWS]];
} else {
NSLog(@"noimage");
cell.imageView.image = [UIImage imageNamed:IMAGETABLENEWS];
//[myimage setImage:[UIImage imageNamed:IMAGETABLENEWS]];
}
我已经离开我的评论的NSLog部分,所以你可以取消和检查,如果你想
确保你有一个IMAGETABLENEWS不断为占位符或根据需要摆脱那部分。
这只是一个非常简单的HTML文本图像检查,并不全面。它符合我的目的,并可能帮助您将自己的逻辑变得更加细致。
如果您MWFeedItem
有嵌在它的enclosure-tag
,你可能要考虑做以下的图像:
MWFeedItem
有一个名为enclosures
属性。它是一个包含一个或多个字典的数组。
这个词典产生于 - (BOOL)createEnclosureFromAttributes:(NSDictionary *)attributes andAddToItem:(MWFeedItem *)currentItem
(MWFeedParser.M
)。
这些字典有三个按键(如果可用):url
,type
& length
。
那第一个可能是你正在寻找的那个。我设法得到它像这样:
供稿示例
<item>
<title>Item title</title>
<link>http://www.yourdomain.com</link>
<description>Item description</description>
<pubDate>Mon, 01 Jan 2016 12:00:00 +0000</pubDate>
<enclosure url="http://www.yourdomain.com/image.jpg" length="0" type="image/jpeg"></enclosure>
<category>Algemeen</category>
</item>
请注意里面<enclosure></enclosure>
YourViewController.m
- (void)feedParser:(MWFeedParser *)parser didParseFeedItem:(MWFeedItem *)item {
NSArray *EnclosureArray = item.enclosures;
NSDictionary *ImageDict = [EnclosureArray objectAtIndex:0]; // 0 Should be replaced with the index of your image dictionary.
NSString *ImageLink = [ImageDict objectForKey:@"url"];
// Returns: http://www.yourdomain.com/image.jpg
}
GOOOOOOOD工作的人的图像链接!感谢:-)) – stepik21 2013-07-16 13:30:55
只是一个问题......有没有办法让所有图像换页而不只是一个?谢谢:-) – stepik21 2013-07-16 15:02:54
非常感谢你的工作。 NSRegularExpression成功。 – 2013-12-05 20:40:13