UITextView在iPhone中滚动(自动)?

时间:2012-12-19 05:35:34

标签: iphone ios uiscrollview scroll uitextview

我在iPhone应用程序中工作,使用UITextView在其中显示多个文本,当用户选中屏幕时,自动从下往上滚动UITextView内容(滚动级别慢)并且工作正常,我想提高滚动速度喜欢1,2,3,4,5,6 ...... 10,怎么做?请帮帮我。

提前致谢

我试过了:

     - (void)viewDidLoad
    {
        [super viewDidLoad];

        ScriptDetails = [[UITextView alloc]initWithFrame:CGRectMake(0,9,480,285)];
        ScriptDetails.text=Script;
        ScriptDetails.textAlignment=UITextAlignmentLeft;
        ScriptDetails.editable=NO;
        ScriptDetails.delegate=self;
        ScriptDetails.font=[UIFont fontWithName:str1 size:f];
        ScriptDetails.backgroundColor=tColor1;
        ScriptDetails.textColor=tColor;
        [self.view addSubview:ScriptDetails];

     UITapGestureRecognizer *singleTap = [[[UITapGestureRecognizer alloc] initWithTarget: self action:@selector(TouchToPlay)] autorelease];
    singleTap.delegate=self;
    singleTap.numberOfTapsRequired = 1; 
    [ScriptDetails addGestureRecognizer:singleTap];
    }

-(void)TouchToPlay
{
    NSLog(@"single");  

  timer = [NSTimer scheduledTimerWithTimeInterval:(35.0/1000.0)
                                                   target:self
                                                 selector:@selector(autoscrollTimerFired:) 
                                                 userInfo:nil 
                                                  repeats:YES];

}



- (void)autoscrollTimerFired:(NSTimer*)timer 
{
    CGPoint scrollPoint = ScriptDetails.contentOffset;
    scrollPoint = CGPointMake(scrollPoint.x, scrollPoint.y + 1);
    [ScriptDetails setContentOffset:scrollPoint animated:NO];
}

2 个答案:

答案 0 :(得分:0)

如果只是快速滚动,可以最小化调用定时器功能的时间。滚动速度慢,可以增加时间。

如果您正在寻找其他内容,请告诉我。

答案 1 :(得分:0)

另一种方法是将变量放在- (void)autoscrollTimerFired:(NSTimer*)timer方法中 在scrollPoint = CGPointMake(scrollPoint.x, scrollPoint.y + 1);行而不仅仅1中放置了一些iVar,并提供了一些机制,例如一个+-按钮来增加和降低速度。