没有AutoLayout的UIScrollView显示iOS 6中的水平滚动指示器,但不显示iOS 7
问题描述:
我花了好几天试图在iOS7(iPad上)上看到工作的UIScrollView水平滚动指示器(没有AutoLayout)。但没有成功。没有AutoLayout的UIScrollView显示iOS 6中的水平滚动指示器,但不显示iOS 7
有没有人修复过这样的bug?
我的项目很简单,运行iOS5和iOS6没有麻烦。
我发现,这对滚动指示图像的iOS7高度始终为零:
UIImageView * scrollBar = [[scrollView subviews] lastObject];
if (scrollBar != nil)
{
PrintRect(@"FRAME", scrollBar.frame);
PrintRect(@"BOUNDS", scrollBar.bounds);
}
结果为iOS7:
FRAME x:0.000000 y:54.000000 w:338.000000 h:0.000000
BOUNDS x:0.000000 y:0.000000 w:338.000000 h:0.000000
但iOS6的:
FRAME x:0.000000 y:47.000000 w:338.000000 h:7.000000
BOUNDS x:0.000000 y:0.000000 w:338.000000 h:7.000000
所以iOS7上的高度滚动条图像等于零。 有可能改变身高,但只有很短的时间,因为在药物治疗过程中身高再次变成零。
答
我被困在类似的东西上。我正在做iTunes上的CS193P课程,并且有这个scrollView
练习 - Imaginarium。基本上它只是嵌入在UIScrollView
中的一个UIImageView
。我有
我的文档中查找的头文件的UIScrollView同样的问题没有被显示滚动指标(与Autolayout
关闭),有此属性的scrollView
叫scrollIndicatorInsets
:
的滚动指示器的距离与滚动视图边缘的距离。
@property(nonatomic) UIEdgeInsets scrollIndicatorInsets
它继续说默认值是UIEdgeInsetsZero
!!所以我使用UIEdgeInsetsMake
创建了UIEdgeInset
(请参阅文档)。然后在viewDidLoad
我设置这个UIEdgeInsets
是我的scrollView的scrollIndicatorInsets,之后我的指标出现在我滚动时。
希望这也适用于你。
你能显示你的密码吗?什么是contentSize和UIScrollView的维度? – Raptor