【问题标题】:UIScrollView: How to scroll one page at a timeUIScrollView:如何一次滚动一页
【发布时间】:2012-04-20 10:19:32
【问题描述】:

我制作了一个可以水平滚动的滚动视图。我面临的问题是我希望用户一次只滚动一页,但此时用户并滚动到模拟器上的滚动视图并滚动两页。

有谁知道如何让滚动视图一次只滚动一页?目前我已启用分页。

【问题讨论】:

    标签: iphone objective-c uiscrollview scroll paging


    【解决方案1】:

    假设您必须在数组中显示一些图像。

    [yourScroll setContentSize CGSizeMake( [arrayImages count]*320 , 420)];
    [yourScroll setPagingEnabled : YES];
    int incX = 0 ;
    
    for( int i = 0; i < [arrayImages count]; i++)
    {
      UIImageView *imgView = [[UIImageView alloc]initWithFrame : CGRectMake(0,0,320,420)];
      UIView *myView = [UIView alloc]initWithFrame : CGRectMake (incX,0,320,420);
      imgView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%@",[arrayImages objectAtIndex : i]]];
      [myView addSubView : imgView];  
      [yourScroll addSubView : myView];
       incX+= 320;
    }
    

    【讨论】:

      【解决方案2】:

      例如:

      - (IBAction)changePage:(id)sender 
      {        
          NSInteger _currentPage = self.pageControl.currentPage;
          CGPoint offset = CGPointMake(_currentPage * self.scrollView.frame.size.width, 0);
          [self.scrollView setContentOffset:offset animated:YES];
          pageControlUsed = YES;
      }
      

      【讨论】:

        【解决方案3】:

        你一定是做错了什么。如果您启用了分页,它将自动与页面对齐(其中页面大小是滚动视图框架的大小)。也许您正在某处以编程方式分页(如果 pagingEnabled 为 true,则不需要)。

        没有代码就说不清楚

        【讨论】:

          猜你喜欢
          • 2012-09-27
          • 2012-06-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-04-04
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多