拉下UIScrollView并保持y位置
我想在UIScrollView被拉到某一点时触发一个动作。 这就是我现在所拥有的:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView { if (scrollView.contentOffset.y == -100.0) { NSLog(@"Trigger"); [scrollView setContentOffset:CGPointMake(0.0, -200.0) animated:YES]; } }
这种工作,直到我结束我的触摸事件,然后UIScrollView返回到它的原始位置。 任何想法如何解决这个问题?
检查范围而不是单个像素,因为scrollView不会逐个像素地向后滚动。 添加如下所示的检查 –
if (scrollView.contentOffset.y < -100.0 && scrollView.contentOffset.y > -110.0) { //call your method }
我无法find源滚动和保持scrollview的位置在这里是代码。
对于你想要设置滚动视图,并保持这样做的视图..
Viewcontroller.h
@property(弱,非primefaces)IBOutlet UIScrollView * scrollView; //从接口生成器@property(弱,非primefaces)IBOutlet UIView * contentView; //从接口
最后,界面层次结构应该像这样 – > scrollView – > contentView – > view viewController.m
-(void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews]; [self.scrollView layoutIfNeeded]; self.scrollView.contentSize = self.contentView.bounds.size;
}
//当返回键按下时,closuresscrollView。你可以把这个代码放在任何你想要的地方
-
(BOOL)textFieldShouldReturn:(UITextField *)textField {
self.scrollView.contentSize = self.view.frame.size;
返回YES;
}
欲了解更多信息检查此.. http://spin.atomicobject.com/2014/03/05/uiscrollview-autolayout-ios/我希望这可以帮助一个人..