iphone - 为什么我的 UIScrollView 水平滚动条不显示?

标签 iphone ios objective-c

    CGFloat width = textField.text.floatValue;
    CGFloat height = textField2.text.floatValue;
    CanvasView *canv = [[CanvasView alloc]     initWithFrame:CGRectMake((self.myscrollview.frame.size.width - width)/2, (self.myscrollview.frame.size.height - height)/2, width, height)];
    [canv setBackgroundColor:[UIColor whiteColor]];
    self.canvas = canv;
    [self.myscrollview addSubview:canv];

我正在使用这段代码在运行时在 UIScrollViewwidthheight 中添加一个 UIView参数是在运行时从用户那里获取的,但问题是:
如果 widthheight 大于 UIScrollView 的大小,则它不会显示水平滚动条。

这是为什么?

最佳答案

问题似乎在于 scrollViewcontentSize

widthheight 增加时,您必须相应地更改 UIScrollViewcontentSize

contentSize 定义了要在 scrollview 上显示的可滚动内容的限制。

scrollView.contentSize = CGSizeMake(width, height);

如果在您的 scrollview 中您只有 UIView 那么上面的代码行在任何情况下都必须有效。 否则,您需要相应地设置 contentSize 以包含其他 UIComponents

关于iphone - 为什么我的 UIScrollView 水平滚动条不显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18125408/

相关文章:

ios - Shared Web Credential 在 iOS 10 真实设备上无法通过

ios - 开始使用 iOS 推送通知

objective-c - 为什么选择 Emacs/Vim/Textmate? Xcode 还不够好吗?

iphone - 使 NSObject 的自定义类可序列化

iphone - MKAnnotation协议(protocol)的 "coordinate"属性

ios - Swift iOS - 如何制作覆盖 TabBarController 和 NavigationController 的模糊效果

objective-c - 根据 Apple 指南,将文件保存到哪个目录?

ios - 在代码生成的 UIView 上绘制 UIBezierPath

ios - 在 ios 中测试应用内购买

iphone - iOS 应用程序的文件服务器