【问题标题】:objective-c: ScrollView scroll to left & right directionObjective-c: ScrollView 滚动到左右方向
【发布时间】:2014-07-07 07:06:57
【问题描述】:

如何将滚动视图滚动到左右方向的特定点。我尝试使用以下代码,但它进入了无限循环。

- (void)scrollViewDidScroll:(UIScrollView *)sender
{
    if (xCoord > scrollView.contentOffset.x )
    {
        scrollView.contentOffset = CGPointMake(xCoord + 160, 0);
    }
    else if(xCoord < scrollView.contentOffset.x )
    {
        scrollView.contentOffset = CGPointMake(xCoord - 160, 0);
    }

    xCoord = scrollView.contentOffset.x;
}

每当用户拖动屏幕时,我只想将我的滚动视图在两个方向上滚动 160 英寸。 就我而言,滚动视图上的标签很少,当我滚动滚动视图时,它必须滚动到特定于标签宽度(160)的标签。

【问题讨论】:

  • 你为你的scrollView设置了contentSize吗?
  • 你的滚动视图的宽度是多少?
  • @GenieWanted:我将滚动视图内容大小设置为 scrollView.contentSize = CGSizeMake(1280,65);
  • @iManan : 1280 是我的滚动视图宽度
  • @Javeed:那么你想把内容滚动到 160 像素吗?

标签: ios iphone objective-c xcode uiscrollview


【解决方案1】:

试试这些,

  1. 设置你的滚动视图contentSize(应该高于 frame)

    self.scrollView.contentSize = CGSizeMake(320, 900);

  2. 取消选中 xib 中的 autoLayout 复选框

  3. 将委托和setScrollEnabled属性赋值为true。

 [self.scrollView setDelegate:self];
> [self.scrollView setScrollEnabled:YES];

 注意:仅将您的初始可见区域设置为frame,并将总内容大小设置为contentSize

【讨论】:

  • 我已经按照你说的做了一切,但没有用。就我而言,滚动视图上的标签很少,当我滚动滚动视图时,它必须滚动到特定于标签宽度(160)。
  • @Javeed:仅将您的初始可见区域设置为“框架”,将总内容大小设置为 contentSize。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-18
  • 1970-01-01
  • 1970-01-01
  • 2014-07-09
  • 1970-01-01
相关资源
最近更新 更多