Tag: uiscrollview

使用类似于新的Google Maps iOS应用程序的上滑视图,可能会遇到多个UIPanGestureRecognizer问题

我试图重现新的iOS谷歌地图应用程序的上滑菜单的行为。 所以基本上这是一个视图,你可以上下滑动到某个点,或者滑动到某个点。 此视图也可以像分页滚动视图一样向右和向左滑动。 它应该上下滚动或滑动到一边,但不是在同一时间。 经过大量的研究和testing,我得到的东西很接近,但并不像需要的那样工作。 我的实现是一个320×400的框架的UIScrollView和960×400分页滚动的内容视图。 然后我添加一个UIPanGestureRecognizer来处理整个视图的上移。 这是PanRecognizer的handleTouch IBAction: – (IBAction)handlePan:(UIPanGestureRecognizer *)sender { NSLog(@"Panning"); CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:self.view]; if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) { _firstX = [[sender view] center].x; _firstY = [[sender view] center].y; } if (!IS_IPHONE_5) { if (_firstY < 216) translatedPoint = CGPointMake(_firstX, 216); else translatedPoint = CGPointMake(_firstX, _firstY+translatedPoint.y); } else { if […]

如何在UITextField成为第一响应者时进行UIScrollView自动滚动

我已经看到这里的post,build议UIScrollViews应该自动滚动,如果子视图UITextField成为第一响应者; 然而,我不知道如何得到这个工作。 我有一个UIViewController有一个UIScrollView和UIScrollView有多个文本框。 我知道如何手动做到这一点,如果有必要; 然而,从我一直在阅读,似乎有可能自动滚动。 请帮助。

无限滚动UICollectionView的两个方向与部分

我有一个类似于iOS日历的月视图,并使用了UICollectionView 。 现在实现一个无限的滚动行为将是有趣的,这样用户可以在每个方向垂直滚动,并且永远不会结束。 现在的问题是如何有效地实施这样的行为? 这是我现在发现的: 基本上你可以检查你是否在当前的滚动视图的末尾。 您可以在scrollViewDidScroll:或在collectionView:cellForItemAtIndexPath: 。 向数据源添加另一个内容很简单,但我认为还有更多。 如果只添加数据,则只能向下滚动。 用户应该能够双向滚动(向上,向下)。 不知道是否reloadData会做的伎俩。 contentOffset也会改变,不应该有跳跃的行为。 另一种可能性是使用WWDC 2011的 高级滚动视图技术中显示的方法。 这里layoutSubviews用于将contentOffset设置为UIScrollView的中心,子视图的框架被调整到与中心距离相同的距离。 如果我没有部分,这种方法将工作正常。 这将如何与部分工作? 我不想使用高数值的部分来伪造无限滚动,因为用户会发现结束。 另外我不使用任何分页。 那么我怎样才能实现集合视图的无限滚动? 编辑: 现在我试图增加节的数量,如果我打到UICollectionView 。 要显示新的部分,必须调用reloadData 。 在调用此方法时,所有当前可用部分的所有计算都会再次完成! 滚动查看集合视图时,此性能问题会导致严重的结果,如果向下滚动,则会变得越来越慢。 不知道是否可以在后台线程上传输这个工作。 采用这种方法,如果您进行必要的调整,可以向上和向下滚动。 赏金: 现在我提供回答这个问题的赏金。 我对如何实现iOS日历的月视图感兴趣。 详细介绍无限滚动是如何工作的。 在这里它在两个方向上(向上,向下)工作,它永远不会结束(真正的无限 – 不重复)。 也没有任何滞后(即使在iPhone 4上)。 我想使用UICollectionView ,数据由不同的部分组成,每个部分都有不同数量的项目。 人们必须做一些计算来得到下一部分。 我不需要日历部分 – 只有在一个部分中的不同项目的无限滚动行为。 随意问问题。 添加部分: public override void Scrolled(UIScrollView scrollView) { NSIndexPath[] […]

我可以animation的UIScrollView contentOffset属性通过它的图层?

我想用CGPathRef来缩放和滚动一个UIScrollView。 正因为如此,我假设我必须animationUIScrollView的图层属性? 但是,我会animation哪些属性,使其相当于做一个UIViewanimation,并设置其contentOffset属性和zoomScale? 这些不是CALayer的属性。 任何想法,我将如何处理这个? 同样,只需要将scrollview移动到某个contentOffset和zoomScale,但不一定是线性的从A点到B点,A放大到B点。 我正在想一个CAKeyFrameAnimation与CGPathRef,但我不知道哪些属性animation。

我可以在UIScrollView中使用UIRefreshControl吗?

我有约5个UIScrollView已经在我的应用程序,所有加载多个.xib文件。 我们现在想要使用UIRefreshControl 。 它们被构build为与UITableViewControllers一起使用(每个UIRefreshControl类的引用)。 我不想重新做5个UIScrollView工作。 我已经尝试在我的UIScrollView使用UIRefreshControl ,除了一些事情之外,它的工作方式和预期一样。 在刷新图像变成加载程序之后, UIScrollView向下跳跃约10个像素,这在我非常小心地非常缓慢地拖动UIScrollview时候才会发生。 当我向下滚动并启动重新加载,然后放开UIScrollView , UIScrollView停留在我放开的位置。 完成重新加载后, UIScrollView跳转到顶部,没有animation。 这是我的代码: -(void)viewDidLoad { UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init]; [refreshControl addTarget:self action:@selector(handleRefresh:) forControlEvents:UIControlEventValueChanged]; [myScrollView addSubview:refreshControl]; } -(void)handleRefresh:(UIRefreshControl *)refresh { // Reload my data [refresh endRefreshing]; } 有什么办法可以节省一大堆时间,并在UIScrollView使用UIRefreshControl ? 谢谢!!!

带分页的UIScrollView +显示前一页/后一页的部分内容

我试图创build一种类似“Cut the Rope”游戏的“游戏模式”菜单来select关卡: 我特别想要达到同样的效果,即显示“当前项目”(在这种情况下,“2. Fabric Box”项目)加上一些以前和以后的项目(以确保用户意识到有更多的滚动模式可用),启用分页(使滚动视图自动“中心”这些项目)。 这似乎是一个启用分页的UIScrollView自然的工作,但从文档看来,分页出现在视图边界的倍数上。 所以:如果分页出现在视图边界的倍数上,有没有办法通过UIScrollView来实现这种效果? 我们看到屏幕的整个宽度的事实表明,在这种情况下,UIScrollView框架的宽度将是320px,但是每个单独的项目都需要小于这个值,以便显示上一个和下一个项目的一小部分,从而搞乱分页…

如何在uiscrollview中滑动图像时添加短小的声音

如何在uiscrollview中添加声音,同时用不同的声音轻扫不同的图像。 请帮帮我。 感谢尊敬的Rajan

对精灵进行滚动视图locking并放大

参考我以前的问题: Swift 2.0,SpriteKit – 滚动查看不使用页面。 我想获得滚动视图(这是UIScrollView的子类),我必须locking在屏幕中间的精灵,而不是只是能够停止在精灵之间的差距滚动。 我也试图让它在屏幕中央稍微放大(如十字路口字符select菜单) 这是我的scrollview: scrollView = CustomScrollView(frame: CGRect(x: 0, y: 0, width: self.frame.size.width, height: self.frame.size.height), scene: self, moveableNode: moveableNode, scrollDirection: .Horizontal) scrollView.contentSize = CGSizeMake(self.frame.size.width * 3, self.frame.size.height) // * 3 makes it three times as wide as screen view!.addSubview(scrollView) /// Set scrollView to first page scrollView.setContentOffset(CGPoint(x: 0 + self.frame.size.width * 2, […]

如何加载滚动视图中的图像捆绑与iPhone中的horrizondal滚动?

我有一个iPhone应用程序,其中我需要加载大量的图像(即50左右),其中有一个小的矩形像(略高于缩略图),每行包含3行,在一页中的4列,我需要水平滚动加载下12张图片等等。 另外我需要显示它下面的页码为1,2等。 任何人都可以在正确的方向指导我在滚动视图中实现这一目标吗?我真的是一团糟,如何将imageview添加到像这样的滚动视图,每个图像视图也有自己的button。

即使contentSize大于框架,在设置内容大小之前添加子视图,scrollView也不起作用

– (void)viewDidLoad { [super viewDidLoad]; self.navigationController.navigationBar.translucent = YES; [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"sprites_0001_Rectangle-1.png"] forBarMetrics:UIBarMetricsDefault]; self.navigationController.navigationBar.translucent = YES; UIImageView *imageView = [[UIImageView alloc]init]; UIImage *image = [UIImage imageNamed:@"sprites_0000s_0008_1st-Page.png"]; imageView.image = image; //imageView.translatesAutoresizingMaskIntoConstraints = NO; imageView.backgroundColor = [UIColor clearColor]; self.view = imageView; if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) { //Write the code to set up view for iPad }else{ UIScrollView […]