Tag: uiscrollview

指导UIScrollView和自动布局

我正在努力与UIScrollView和AutoLayout。 我读博客 ,试图做我自己的东西。 但是,Xcode报告含糊不清的内容大小。 我从超级视图设置scrollview和领先,尾随,顶部,底部约束为0。 有一个UIView作为容器来容纳我所有的子视图,包括两个UILabel元素和两个UICollectionView视图。 我将容器视图设置为与View控制器视图相等的宽度和相等的高度。 然后,我将UILabel和UICollectionView视图约束全部设置为0.但是,它的运行如下图所示。 请帮我或给我一些关于UIScrollView和AutoLayout的文档或指南。

UITableView没有与单个手势识别器接触

我有UITextField,UIButton和UITable视图的UIView。 文本框和button会折中search栏,然后将结果加载到表格视图中。 我想这样做,所以他们键盘驳回。 如果用户在编辑文本字段时点击某些内容。 我的策略是添加一个手势识别器的UIView,但手势识别器似乎拦截从表视图的所有触摸,你| tableView:didSelectCellAtIndexPath:| 永远不会被调用。 最有趣的是(对我来说)UIButton在用户编辑字段时仍然是可点击的,即使UITableView不是。 我试过执行| gestureRecognizer :: shouldRecognizeSimultaneouslyWithGestureRecognizer:| 总是回来是的,但这并没有帮助。 我也试过设置 singleTapRecognizer.cancelsTouchesInView = NO; 这也没有帮助。 当文本字段调用| textFieldDidBeginEditing:|时,我很高兴添加和删除手势识别器的想法。 和| textFieldDidFinishEditing:|,虽然这感觉混乱,当你编辑文本字段(一个closures他们的键盘和删除识别器,一个点击单元格)时,仍然需要点击两个点击单元格。 有没有更好的办法? 相关代码如下: – (void)loadView { [super loadView]; self.scrollView = [[UIScrollView alloc] initWithFrame:[UIScreen mainScreen].bounds]; self.scrollView.backgroundColor = [FDEColors viewBackgroundColor]; self.view = self.scrollView; self.searchField = [[UITextField alloc] initWithFrame:CGRectZero]; self.searchField.placeholder = @"What are you looking for?"; self.searchField.backgroundColor […]

在滚动视图中embedded的视图的iOS 7自动布局

这里可能是iOS新手的下一个愚蠢的问题,我正在试验的是滚动和自动布局的东西。 所以我创build了故事板,并添加了一个由滚动视图embedded的视图。 查看有白色背景,我设置滚动查看背景是蓝色的: 你看到的约束都有0值,以匹配父母。 在肖像模式下一切都很好: 但是在风景不是,叶子视图不调整和滚动视图(蓝色的一个区域变得可见)

在UIScrollview上水平显示图像的ipad和获取图像的标记点击

我在UIScrollView中显示图像与UIImageView.I添加UIGestureRecognizer到每个ImageView,我也设置图像视图的标签属性。我想标记的图像视图上点击特定的图像视图。但我只是得到最后ImageView.Pasting代码below.Your帮助将不胜感激。 UITapGestureRecognizer *tapRecognizer; tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageViewDidTapped:)]; tapRecognizer.numberOfTapsRequired = 1; tapRecognizer.delegate = self; scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(5, 60, self.view.bounds.size.width-20, self.view.bounds.size.height-100)]; scrollView.delegate = self; scrollView.pagingEnabled = YES; scrollView.scrollEnabled = YES; scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite; [scrollView setCanCancelContentTouches:YES]; [scrollView setUserInteractionEnabled:YES]; float width; for (NSDictionary *dict in object) { UIImageView *backgroundImageView = [[UIImageView alloc]initWithFrame:CGRectMake(width, 0, self.view.bounds.size.width-20, self.view.bounds.size.height-40)]; NSDateFormatter […]

一个UIScrollView在UIPageViewController里滚动了多less?

我想弄清楚我的UIPageViewController里面的滚动视图有多less滚动。 我在viewLoad中从UIPageViewController访问UIScrollView有以下代码。 for (UIView *view in self.pageViewController.view.subviews) { if ([view isKindOfClass:[UIScrollView class]]) { thisControl = (UIScrollView *)view; } } 所以一旦我有了UIScrollView,调用了这个控件,我想通过做这样的事情打印多less已经滚动: NSLog (@"Scroll: %f",thisControl.contentOffset.x); 问题是,我真的不知道该把这条线放在哪里,或者如何连续打印已经滚动了多less。 任何想法?

“scrollViewDidScroll”不会持续捕捉动作

我正在写程序来移动名为“myView”的UIView,同时滚动一个UITableView,看下面的图片: “myView”会随着tableview的contentoffset的变化而改变它的“y坐标”,我写的主要代码是: func scrollViewDidScroll(scrollView: UIScrollView) { let off_y = scrollView.contentOffset.y let new_y = originalMyViewY – off_y if new_y <= 0 { print("bad new_y : \(new_y)") return } else { print("right new_y: \(new_y)") } var frame = self.myView.frame frame.origin.y = new_y self.myView.frame = frame } 当我以正常的速度滚动tableview时,这是完美的。 但是,如果我快速滚动tableview,'myview'将在到达顶部边缘之前停止。 这是日志显示的内容: right new_y: 56.0 bad new_y : -92.5 bad […]

重新创buildInstagram长期偷看?

我正在寻找重新创build在这个video中显示的function: 长按完成后,会出现一个视图,当用户向上滑动足够远时,选项会显示在底部。 如果用户继续向上拖动,然后放开,主视图就会popup,并跳到屏幕中间。 如果用户一直向下滑动,视图就会动起来。 我承认这里有很多不同的东西,而且这是一个非常广泛的问题。 我或多或less正在寻找一个开始使用它的地方。 我真正认识的唯一的东西是我想一个滚动视图。 我知道如何处理所有基本的东西,提出和解散不同的意见,但拖动和滚动,并回到原地是我不知道从哪里开始。 这一切只是我需要学习的scrollView代码? 例如,我想有一种方法来检测何时滚动已滚动足够多,以触发呈现选项视图。 什么使视图在拖放之后反弹到位? 等等 用什么工具来实现这种行为?

iOSdynamic加载新的单元格到tableview的底部

我正在开发一个iOS项目,在用户到达底部时,我想dynamic地将更多的单元格添加到tableview的底部。 我目前有这个工作,通过调用一个方法,获取更多的数据添加到我用来举行我的单元格的数组。 当我完成将对象添加到数组时,我调用[tableView reloadData]。 这工作,但它不直观地加载单元格,直到tableview停止滚动。 我也尝试使用[tableView insertRowsAtIndexPaths:inSection:withRowAnimation:UITableViewRowAnimationNone]。 但是,我得到了一个非常奇怪的行为,随机单元格将消失,不显示备份,直到我滚动tableViewclosures屏幕的部分,然后返回到该区域。 有没有办法让tableView重新加载,即使tableView仍然在中间滚动时,[tableView reloadDate]被调用? 谢谢!

UIScrollView上的setContentOffset是正确的

我使用这段代码来滚动我的UIScrollView ,因为我从底部添加了一个新的UIView ,我想向下滚动。 我这样做: CGPoint newOffset = CGPointMake(mainScrollView.contentOffset.x, mainScrollView.contentOffset.y + floorf(bottomAttachmentView.frame.size.height / bottomAttachmentView.multFactor)); [mainScrollView setContentOffset:newOffset animated:YES]; 我基本上把我的新元素的高度添加到UIScrollView的contentOffset的y ,但有时它滚动scrollView的contentSize ,更低,可以滚动。 发生这种情况是因为我在调用上述方法之前修改了contentSize ,滚动视图的高度缩小了。 你怎么调用setContentOffset所以它不会让我scrollView滚动它自己的contentSize ? 谢谢!

当视图当前不可见时,更改集合视图的滚动位置

有两种情况下,我设置我的collections视图的滚动位置有问题: 在开始时,我想滚动到某个项目(起始位置!=集合视图的开始) 视图目前还不可见,但在“背景”集合视图应滚动到某个项目 将集合视图滚动到某个单元格的可靠方法是什么? 目前我设置scrollToItemAtIndexPath在viewDidAppear的滚动位置,但对于我来说已经太晚了。