Objective c 如何以编程方式滚动UIScrollVIew
我想滚动我的Objective c 如何以编程方式滚动UIScrollVIew,objective-c,Objective C,我想滚动我的UIScrollView(水平)。但当按下按钮时,它会进入滚动视图的最左侧。我想滚动3,4像素,当我再次按下时,它会再滚动3,4像素 - (IBAction)leftScroll:(id)sender { CGPoint pt; pt.x = 1; pt.y = 0; UIScrollView *sv = (UIScrollView *)[self.view viewWithTag:5]; [sv setContentOffset:pt ani
UIScrollView
(水平)。但当按下按钮时,它会进入滚动视图的最左侧。我想滚动3,4像素,当我再次按下时,它会再滚动3,4像素
- (IBAction)leftScroll:(id)sender
{
CGPoint pt;
pt.x = 1;
pt.y = 0;
UIScrollView *sv = (UIScrollView *)[self.view viewWithTag:5];
[sv setContentOffset:pt animated:YES];
}
提前感谢您的回答尝试并手动设置新位置 目标-c
float width = CGRectGetWidth(scrollView.frame);
float height = CGRectGetHeight(scrollView.frame);
float newPosition = scrollView.contentOffset.x+width;
CGRect toVisible = CGRectMake(newPosition, 0, width, height);
[scrollView scrollRectToVisible:toVisible animated:YES];
Swift 4
let scrollView = UIScrollView()
let width: CGFloat = scrollView.frame.size.width
let height: CGFloat = scrollView.frame.size.height
let newPosition: CGFloat = scrollView.contentOffset.x + width
let toVisible: CGRect = CGRect(x: newPosition, y: 0, width: width, height: height)
scrollView.scrollRectToVisible(toVisible, animated: true)
您可以使用
[scrollView setContentOffset:CGPointMake(x,y)动画:YES]代码>方法。如果滚动视图水平滚动,则需要相应地设置x值,否则设置y值
UIButton *locatorbutton_frame=(UIButton *)[scrollviewoutlet viewWithTag:numberglobal];
float width = scrollviewoutlet.frame.size.width;
float height = scrollviewoutlet.frame.size.height;
float newPosition = scrollviewoutlet.contentOffset.x-locatorbutton_frame.frame.size.width;//+width;
CGRect toVisible = CGRectMake(newPosition, 0, width, height);
[scrollviewoutlet scrollRectToVisible:toVisible animated:YES];
我发现它工作得很好。按钮框是我添加到滚动视图中的按钮。您可以使用Obj-C中的以下命令滚动到滚动视图中的某个点
[scrollView setContentOffset:CGPointMake(x, y) animated:YES];
或迅捷
scrollView.contentOffset = CGPoint(x: x, y: y)
要使用UIScrollView进行幻灯片放映,您可以在滚动视图中排列所有图像,设置一个重复计时器,然后-setContentOffset:animated:当计时器启动时。很好,这就是工作。但是我想知道我应该更改哪个变量的值,使其滚动小于此值??这是现在更有效的方法。当滚动结束时,要告诉您,此委托方法是您的朋友:ScrollViewDiEndScrollingAnimation:(UIScrollView*)scrollView