Tag: uiscrollview

UITableView在更改单元格高度后滚动

所以我有一个tableView,我想要改变一个单元格的高度,当轻拍。 实际上,我用一个更大的单元来代替它。 点击,我打电话给: tableView.beginUpdates() tableView.reloadRowsAtIndexPaths([indexPath], withRowAnimation: .Fade) tableView.endUpdate() 然后我修改我的cellForRowAtIndexPath返回正确的新单元格和高度。 单元格的高度是通过在单元格的实现中重写sizeThatFits来自动计算的: override func sizeThatFits(size: CGSize) -> CGSize { return CGSizeMake(size.width, myHeight) } 奇怪的是,这样做后,向下滚动是好的,但是当我向上滚动时,桌子每秒跳跃5个像素,直到我到达顶部。 当我到达桌子的顶端时,问题就消失了,两个方向都没有跳跃。 任何想法为什么发生这种情况? 我想这是与新的细胞高度替代其他单元格有关,但我不明白为什么tableView没有照顾到这一点。 任何帮助表示赞赏! 谢谢! 编辑:从cellForRowAtIndexPath添加代码: if self.openedCellIndex != nil && self.openedCellIndex == indexPath { cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as ListCell (cell as ListCell).updateWithDetailView(dayViewController!.view) } else { cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) […]

UIScrollView中的UIScrollView,如何在两者之间滚动时保持平滑过渡

我有以下布局(见下文),对于大多数情况下,工作得很好。 用户可以在蓝色的UIScrollView进行滚动(对于所有的意图和目的都是一个UITableView ,但这个问题概括了这个),然后当他们到达这个滚动视图的末尾时,他们可以再次开始滚动(他们有取消他们的手指,并再次,因为内部滚动视图rubberbands否则),“超级”滚动视图开始滚动,显示其余的图像。 这是整个(他们必须把他们的手指,再次,因为内部滚动视图rubberbands否则) ,我不想要的。 理想情况下,一旦包含的UIScrollView到达其内容的末尾,我想让超级视图直接滚动,以便内部滚动视图不会橡皮筋。 用户滚动时也一样; 当红色滚动视图到达其内容的顶部时,我希望内部蓝色滚动视图开始向上滚动,而不是顶部的红色滚动视图橡皮筋。 任何想法如何? 我能够确定滚动视图何时到达其内容的末尾,但我不知道如何应用这些知识来达到我所追求的效果。 谢谢。 // Inner (blue) scroll view bounds checking if (scrollView.contentOffset.y + scrollView.frame.size.height > scrollView.contentSize.height) { … } // Outer (red) scroll view bounds checking if (scrollView.contentOffset.y < 0) { … }

将UIViewcontrollers添加到UIScrollview

我正在改变现有应用程序的布局。 现在有一系列的视图需要添加到滚动视图,用户可以滑动移动到下一个屏幕。 我已经使用下面的代码将控制器添加到滚动视图。 这个代码被添加到ViewController的viewDidLoad中,该ViewController持有UIScrolliew 。 int i=1; int width = 0,height=0; for(POTCTask *task in [CommonData tasks]) { UIViewController<TaskViewController> *controller = [TaskViewFactory getTaskViewController:(task.inputTypeId)]; width = controller.view.frame.size.width; height = controller.view.frame.size.height; controller.view.frame = CGRectMake(width*(i-1), 0, width, height); [self.scrollView addSubview:controller.view]; i++; } self.scrollView.contentSize = CGSizeMake(width*i, height); 它加载所有视图都很好。 但是只有viewDidLoad在每个viewcontroller中被调用。 没有其他方法被调用,而且有一些方法在其中。 但它只显示第一个单元格。 我怎么能在iOS中正确做到这一点? 谢谢

UIScrollView覆盖我的子视图的平移手势识别器

如果我有一个子视图的scrollView和子视图有一个平移手势识别器,scrollView的平移手势覆盖子视图的平移。 我想要的是相反的,我认为,这是我拖动子视图将在滚动视图内平移,但如果我触摸另一个区域滚动视图将平移平常。 有没有简单的方法来设置?

UITextfield显示在键盘 – 初学者的顶部

我有textboxes 。 当我点击它,键盘popup。 但是,由于uitextfield位于uitextfield下方,所以在popup键盘时会覆盖它。 (键盘显示在文本字段上方,因此用户无法看到它)。 我需要一种方法来移动textfield ,以便用户可以看到它。 iPhone的facebook应用程序有一个解决方法,他们收缩UIComponents视图上显示的textfield ,所以它不包括从键盘。 有人能指点我一个教程或示例代码开始?

iOS Storyboard:如何在UIScrollView中编辑大于屏幕的内容视图

我有一个比屏幕大的视图,我需要把它放在一个UIScrollView。 所以我首先添加一个UIViewController到故事板,然后,我添加一个UIScrollView到我的视图控制器的根视图,然后当我添加UIScrollView的子视图,但我不能将它们添加到滚动视图区域外,我可以看到,如何解决这个问题?

UIACollectionView单元vs visibleCells

我正在尝试在xcode 4.5中使用自动化编写一个testing脚本。 我有一个UICollectionView ,我想点击一些目前不可见的单元格。 根据文档 ,我应该期望cells返回集合视图中的所有单元格,而visibleCells只返回当前可见的单元格。 相反,我所看到的是单元格只返回当前可见的单元格,并调用visibleCells停止脚本'undefined' is not a function (evaluating 'collection.visibleCells()') var target = UIATarget.localTarget(); var collection = target.frontMostApp().mainWindow().collectionViews()[0]; UIALogger.logMessage("Looking in collection: " + collection); UIALogger.logMessage("Cells: " + collection.cells() + " length " + collection.cells().length); UIALogger.logMessage("Visible cells: " + collection.visibleCells()); 上面的代码返回右边的UICollectionView ,第二个日志行打印: Cells: [object UIAElementArray] length 12 尽pipe我在集合视图中有100个项目,第三个日志行崩溃脚本。 这是一个文档/ UIACollectionView错误? 任何想法如何告诉自动滚动,直到它看到名为“我的单元格”的单元格? 我试过使用someCell.scrollToVisible ,但我需要有单元格来做到这一点,我没有,因为我不能从单元格中获取它。 […]

iOS 8 AutoLayout滚动视图在iPhone 6 plus上水平滚动

我有一个适用于iOS的应用程序,同时适应所有的用户界面自动布局的大小class级,以支持新的iPhone 6和iPhone 6加上我面临一个奇怪的问题…我的滚动查看工作正常在iPhone 4s,5,5s和6 …在iPhone 6加上他们不是只滚动垂直,而是水平…就像如果滚动视图的内容大小比视图本身更宽的几个像素(所以它水平移动几个像素然后它弹跳)。 我不明白为什么会发生这种情况

UILabel不会使用AutoLayout在UIScrollView内自动换行

我有一个UILabel里面的UIScrollView ,我试图换行。 我想使用AutoLayout进行布局configuration。 当它不在UIScrollView时, UILabel字完美包装。 我只需要将行数设置为0,并将换行符模式设置为自动换行。 但是,当我把UILabel放入一个UIScrollView ,换行停止了。 我已经使用AutoLayout检查了“ UIScrollView中的dynamicUILabel高度 ”和“ 使用Interface Builder和Autolayout在UIScrollView中正确地调整UILabel的大小 ”,但是这些问题都没有帮助我的答案。 我已经build立了一个testing项目,说明如果有人想看看我在说什么。

iPhone – UIScrollView …检测触摸的坐标

可能重复: UIScrollview获取触摸事件 是否有可能在UIScrollView中检测到手指触摸的位置? 我的意思是,假设用户以这种方式使用他的手指:轻按和滚动,再次举起手指,轻敲和滚动等等。是否有可能知道与自身相关的轻敲发生的CG点。查看滚动器是在? 卷轴占据了整个自我。 谢谢。