Tag: uiscrollview

UIScrollView里面的UIVIew弹回

我的应用程序是iPad的使用故事板两个场景。 在一个场景中,我有一个包含UIVIew的UIScrollView。 它滚动,但立即反弹,使其无用。 UIScrollView的大小是768×590; UIView的大小是768×1590; UIScrollView的ContentSize是768×590。 这是UIScrollView设置的图像: (我在过去的6个小时里看过SO和Google,尝试了很多东西,但是没有任何工作,我也做了几次CMD + Option + K(Clean),这也没有帮助。 为什么它不能正确滚动?

UIScrollView在缩放或滚动时阻止所有触摸

当UIScrollView用缩放手势或滚动缩放时,我不能在同一个窗口中按任何其他button。 有什么办法来启用这种行为? 这就像滚动视图有独占触摸(虽然我试图明确设置为NO )。 我有一个视图内的滚动视图,我希望它滚动只有当用户持有滚动button​​。 否则,用一根手指平移可以徒手绘制。

进入前景时如何保留UIScrollView的框架?

这个问题讨论了如何在UIScrollView中的视图之间创build空白。 约定的方法是增加UIScrollView框架的宽度,以在将滚动过去的视图之间创build间隙。 但是,当滚动视图是UINavigationController的子视图时,会出现问题。 UINavigationController在-viewDidLoad设置后,更改UIScrollView的框架。 提出的解决scheme是在-viewDidAppear改变帧大小,在这一点上UINavigationController已经完成了改变的事情,改变将坚持。 – (void)viewDidAppear:(BOOL)animated { CGRect frame = self.view.frame; frame.size.width += 20; // This gives a 20px gap width self.view.frame = frame; } 我一直在我的应用程序中使用它,它一直工作正常,但我遇到的问题,当应用程序发送到背景,然后再次检索。 看来,UINavigationController再次改变框架,将其重置为默认宽度,但是这次不调用-viewDidAppear ,所以从不改变。 我已经尝试注册UIApplicationWillEnterForegroundNotification和UIApplicationDidBecomeActiveNotification但这两个似乎都发生在UINavigationController改变的东西之前,所以在这一点改变框架没有效果。 在什么时候我应该尝试改变帧的大小,以便它会坚持,或者我可以以某种方式防止UINavigationController在第一个地方改变框架? 编辑: 所以我subclassed UIScrollView,并发现一个称为[UIViewControllerWrapperView setFrame:]被调用,这反过来调用我的子类的-setFrame:方法来设置帧大小。 我不知道什么UIViewControllerWrapperView是或不是,我不知道它将有可能在它已经完成它的事情并正确设置帧大小后跳入。 我会继续调查。

带有ScrollView的IOS UICollectionView

我在我的数据库中有6个图像。 我已经创build了UIScrollView *scroll; 之后,我创build了UICollectionView并将UICollectionView添加到了UIScrollView UICollectionViewFlowLayout *layout=[[UICollectionViewFlowLayout alloc] init]; collectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(screenWidth*i,5,screenWidth ,self.scroll.frame.size.height-5) collectionViewLayout:layout]; [collectionView setDataSource:self]; [collectionView setDelegate:self]; [collectionView setPagingEnabled:YES]; collectionView.showsHorizontalScrollIndicator = NO; collectionView.showsVerticalScrollIndicator = NO; [collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"]; [collectionView setBackgroundColor:[UIColor purpleColor]]; [self.scroll addSubview:collectionView]; 而现在,当我滚动我想在这个代码下面重新加载UICollectionView数据: – (void)scrollViewDidScroll:(UIScrollView *)sender { if (!pageControlBeingUsed) { [getAllEmoji removeAllObjects]; // Switch the indicator when more than 50% of […]

UITextView浮动蓝色框滚动时

我有一个禁用滚动的UITextView。 它在UIScrollView里面。 如果我input“fffs”,则出现一个小蓝框。 如果在显示该框时滚动,则该框不会消失,只是**浮在显示屏上,看起来像是一个明显的错误。 如果在启用滚动的情况下使用UITextView,只要UITextView开始滚动,该框就会隐藏起来。 我假设UITextView钩住它自己的滚动条的滚动事件,当它滚动时,隐藏那个滚动条。 当它在一些其他的UIScrollView里面的时候不会发生,所以我可能需要自己去做,但是我怎样才能让它隐藏那个盒子(也可能是其他的东西,比如应用自动校正)一个健壮的和非私有的API方式? 我可能会向苹果提交一个bug,但同时我希望有人能够快速修复。 *小蓝框=自动更正框/突出显示的东西 – 不确定究竟该怎么称呼它,也许为什么我找不到任何现有的答案。 **浮动=认为显​​示:固定在CSS中 更新: 我试过这个和scrollViewWillBeginDragging里面的一些其他变体: UITextView *tv = GetFirstResponder(); // confirmed this returns correct value tv.autocorrectionType = UITextAutocorrectionTypeNo; [tv setNeedsDisplay]; [tv setNeedsLayout]; [tv setNeedsUpdateConstraints]; // just for giggles? 我确认代码正在运行,而且我甚至没有添加代码来重新启用自动更正,所以我知道它没有被重新启用。 我也可以确认它是“工作”,因为当我点击另一个领域,然后回到原来的领域,自动更正现在被禁用。 我想如果我能find那个小蓝盒子的UIView,我可以隐藏/删除它。 我尝试在XCode中使用新的视图debugging,但它不捕获蓝色框,所以它必须是特殊的。 所有使用UITextView的人都以类似的方式使用UITextView(在键入内容时resize,不进行内部滚动),我很惊讶没有人知道这一点。 除非是一个全新的bug,否则我使用最新的iOS版本和我的两个testing设备(iPod 5和iPad)。

我如何添加滚动视图到我的gameScene.swift,这将滚动一系列的精灵?

所以我创build了一个3×10的精灵网格,它离开了屏幕的底部边缘。 我已经添加了一个UIScrollView,滚动指示器出现,但实际上没有发生移动。 代码如下: import SpriteKit var buyButton = SKSpriteNode() var pic = SKTexture(imageNamed: "Button") class GameScene: SKScene, UIScrollViewDelegate { var scrollView = UIScrollView() var scrollFrame = CGRect!() override func didMoveToView(view: SKView) { /* Setup your scene here */ print(self.frame.size.width) scrollView = UIScrollView(frame: CGRect(origin: CGPointMake(0,0), size: CGSizeMake(self.frame.size.width, self.frame.size.height))) scrollView.contentSize = CGSizeMake(self.frame.size.width, self.frame.size.height*2) scrollView.bounces = false scrollView.pagingEnabled […]

UIWebView不调用UIScrollViewDelegate方法

在我的iphone应用程序,我设置我的uiwebview委托给文件的所有者,但它不是调用uiscrollviewdelegate方法 我的代码是 – (void)webViewDidStartLoad:(UIWebView *)webView{ NSLog(@"webViewDidStartLoad "); } – (void)webViewDidFinishLoad:(UIWebView *)webView{ NSLog(@"webViewDidFinishLoad "); } – (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ NSLog(@"scrollViewDidEndDecelerating "); } – (void)scrollViewDidScroll:(UIScrollView *)scrollView{ NSLog(@"scrollViewDidScroll "); } 但我越来越 webViewDidStartLoad webViewDidFinishLoad 这些消息在控制台中。 有什么不对吗 提前致谢

如何使用UIScrollView以编程方式滚动UIStackView?

我已经看到了几个解决scheme使UIStackView滚动与UIScrollView但他们都依靠Autolayout和IB。 有没有办法做到这一点编程? 我看过这个例子: https : //gist.github.com/twostraws/a02d4cc09fc7bc16859c 但它使用视觉格式语言,我正在使用布局锚API。 布局锚点API: view.leadingAnchor.constraintEqualToAnchor(otherview.topAnchor).active = true

UIScrollView无法使用自动布局放大iOS7

我创build了这个层次结构的UIScrollView(我的示例是AutoLayout) UIViewController UIView UIScollView ContainerView UIImageView 一切工作正常在iOS 8 – 9期待iOS 7 我可以在iOS 7中缩放我的ImageView 我已经实施: -(void)viewDidLayoutSubviews { [super viewDidLayoutSubviews]; CGSize scrollableSize = CGSizeMake(self.imageView.frame.size.width,self.imageView.frame.size.height); [self.scrollView setContentSize:scrollableSize]; self.scrollView.backgroundColor = [UIColor whiteColor]; self.scrollView.minimumZoomScale = 1.0 ; self.scrollView.maximumZoomScale = 4; } -(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return self.containerView; } 我已检查此链接: UIScrollView缩放与自动布局 滚动视图不能运作IOS 7 问题 缩放不适用于iOS 7,(我需要使用自动布局),我的UIImageview应该有一个AspectFit比率 我上传我的示例在github上: sampleProject

UIScrollView里面的UIScrollView – 在文本视图边界时忽略滚动视图?

我有一个UIScrollView在另一个UIScrollView ,都垂直滚动。 我有一个问题,当我试图滚动内滚动视图时,触摸也被外滚动视图拾起。 我需要在内部滚动视图触及它独占处理, scrollViewDidScroll父滚动视图上调用。 我尝试了所有的方式,子类化滚动视图和重写hitTest:withEvent ,设置canCancelContentTouches ,设置exclusiveTouch ,没有任何工作。 scrollViewDidScroll方法首先在内部触发,然后在外部触发。 在第一个滚动视图之后,我怎样才能有效地消除触摸,而不是将响应者链传递给外部滚动视图? (仅供参考:层次结构是中间有一个子视图控制器,所以外部滚动视图包含一个子视图控制器,而后者又包含内部滚动视图)。