UIImageView 在 UIScrollView 内未正确定位
Posted
技术标签:
【中文标题】UIImageView 在 UIScrollView 内未正确定位【英文标题】:UIImageView not positioned correctly inside UIScrollView 【发布时间】:2013-10-27 09:08:14 【问题描述】:我在滚动视图中有滚动视图(一个用于分页,一个用于缩放)。外部容器只占据屏幕的一部分。内部滚动视图以编程方式创建,其框架与外部框架匹配,但具有原点 (0, page * width_of_outer)。问题是当屏幕加载时,内部滚动视图不会出现在 y = 0 处,而是被外框的 y 偏移。一旦我触摸内部滚动视图内的某些东西,就会移动到占据整个外部滚动视图的正确位置。我不知道为什么......内部的框架是正确的,y = 0。所有都添加为外部的子视图。有什么想法吗?
编辑: 我的内心是被创造出来的
CGRect frame = self.frame; // or bounds - doesn't make any difference
frame.origin.x = frame.size.width * page;
frame.origin.y = 0.0f;
// this will cause calling [UIScrollView initWithFrame: frame];
MyScrollView *scrollView = [[MyScrollView alloc] initWithPage:page andFrame:frame];
[self addSubview: scrollView];
【问题讨论】:
可以展示内部滚动视图框架创建代码吗? 你什么时候运行上面的代码?viewDidLoad
、viewdidlayoutsubviews
等?
这个片段中的self
是外滚动视图吗?
Neal - 它在从父级调用的单独方法中(所以我猜它毕竟是正常的)。 Alexander:是的,self 是外层滚动视图
【参考方案1】:
你想使用inner.frane = outter.bounds;
。
【讨论】:
谢谢,但这没什么区别以上是关于UIImageView 在 UIScrollView 内未正确定位的主要内容,如果未能解决你的问题,请参考以下文章
在 UIImageView 上绘制 UIBezierPath
使 UIImageView 透明并在触摸时显示其下方的 UIImageView
在 UIImageView 上添加 UIPinchgesture 的哪个比例或在 UIImageView 包含的 UIView 上?