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];
我正在使用这段代码在运行时在 UIScrollView
和 width
和 height
中添加一个 UIView
参数是在运行时从用户那里获取的,但问题是:
如果 width
和 height
大于 UIScrollView
的大小,则它不会显示水平滚动条。
这是为什么?
最佳答案
问题似乎在于 scrollView
的 contentSize
。
当 width
和 height
增加时,您必须相应地更改 UIScrollView
的 contentSize
。
contentSize
定义了要在 scrollview
上显示的可滚动内容的限制。
scrollView.contentSize = CGSizeMake(width, height);
如果在您的 scrollview
中您只有 UIView
那么上面的代码行在任何情况下都必须有效。
否则,您需要相应地设置 contentSize 以包含其他 UIComponents
。
关于iphone - 为什么我的 UIScrollView 水平滚动条不显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18125408/