for 循环看起来像这样,我在视图中写的确实加载了,所以加载这个页面需要更多时间。
for (int i=3; i<[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]count]; i++)
{
if (i%3==0)
{
x=0;
y++;
}
view=[[UIView alloc]initWithFrame:CGRectMake((x*250)+5, (y*404)+6, 244, 400)];
[view setBackgroundColor:[UIColor whiteColor]];
view.layer.borderColor=[[UIColor whiteColor]CGColor];
view.layer.borderWidth=1.0;
view.layer.cornerRadius = 5;
view.layer.masksToBounds = YES;
[scroller addSubview:view];
titlelabel=[[UILabel alloc]initWithFrame:CGRectMake(10, 10, 230, 20)];
[titlelabel setText:[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"title"]objectForKey:@"text"]];
[titlelabel setNumberOfLines:0];
titlelabel.font=[UIFont boldSystemFontOfSize:15.0f];
[titlelabel setBackgroundColor:[UIColor clearColor]];
[titlelabel sizeToFit];
[view addSubview:titlelabel];
datelabel=[[UILabel alloc]initWithFrame:CGRectMake(10, 62, 190, 20)];
[datelabel setText:[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"title"]objectForKey:@"text"]];
[datelabel setNumberOfLines:0];
datelabel.font=[UIFont fontWithName:@"arial" size:12.0f];
[datelabel setBackgroundColor:[UIColor clearColor]];
[datelabel sizeToFit];
[view addSubview:datelabel];
NSData *data=[[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:[[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"image"]objectForKey:@"text"]stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]];
NSLog(@"data= %@",data);
if (data==NULL ||[[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"image"]objectForKey:@"text"] isEqualToString:@""])
{
textview=[[UITextView alloc]initWithFrame:CGRectMake(2,80, 238, 386)];
[textview setText:[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"title"]objectForKey:@"text"]];
[textview setFont:[UIFont fontWithName:@"ArialMT" size:14]];
[textview setDelegate:self];
[view addSubview:textview];
}
else
{
imageview=[[UIImageView alloc]initWithFrame:CGRectMake(7, 80, 230, 150)];
[imageview setImage:[UIImage imageWithData:data]];
[view addSubview:imageview];
textview=[[UITextView alloc]initWithFrame:CGRectMake(5, 240, 238, 200)];
[textview setText:[[[[[[dataDict objectForKey:@"rss"]objectForKey:@"channel"]objectForKey:@"item"]objectAtIndex:i]objectForKey:@"title"]objectForKey:@"text"]];
[textview setFont:[UIFont fontWithName:@"ArialMT" size:14]];
[textview setDelegate:self];
[view addSubview:textview];
}
}
这里让我感到问题的是每次都从服务器获取的图像,所以这会变慢,请建议如何使它像延迟加载一样......
提前致谢