加载uiscrollview所需的时间

时间:2013-12-12 12:16:00

标签: ios

我正在尝试找到uiscrollview在屏幕上显示的时间。我有一个uibutton,当点击它时会创建一个带有很长文本的标签并将其添加到滚动视图中。然后将scrollview添加为self.view的子视图。我需要知道滚动视图在屏幕上显示的时间。 请帮忙。提前致谢。代码

- (IBAction)clickeMe:(id)sender {
    self.start=[NSDate date];

    NSString *text="a very long text";    

    NSMutableAttributedString *attributedText =
    [[NSMutableAttributedString alloc] initWithString:text];


    NSRange range1 = NSMakeRange(100, 300);
    [attributedText setAttributes:@{NSForegroundColorAttributeName:[UIColor redColor]}
                            range:range1]; 


    UILabel *label1=[[UILabel alloc]initWithFrame:CGRectMake(10, 10, 700, 1000)];
    [label1 setAttributedText:attributedText];
    [label1 setNumberOfLines:0];
    [label1 sizeToFit];
    scrollviewtest *scrollview=[[scrollviewtest alloc]init];

    scrollview.frame=CGRectMake(10, 50, 700, 1000);
    CGSize maxSize = CGSizeMake(label1.frame.size.width, CGFLOAT_MAX);
    CGSize labelSize = [label1 sizeThatFits:maxSize];

    [scrollview addSubview:label1];
    scrollview.contentSize = CGSizeMake(700, labelSize.height);
    [self.view addSubview:scrollview];
    [self performSelector:@selector(viewLoaded) withObject:nil];

}

-(void)viewLoaded
{
    NSLog(@"[viewloaded]");
    NSTimeInterval timeInterval = [self.start timeIntervalSinceNow];

    NSLog(@"time taken is %f",fabs(timeInterval));

}

上面代码的问题是viewLoaded实际上是在屏幕上出现scrollview之前调用的。

1 个答案:

答案 0 :(得分:0)

在加载东西之前节省时间,然后节省加载完成后的时间。 做一个减法然后你有你的加载时间。

就像php或其他语言一样。