情况如下:
我有一个水平滚动的UIScrollView
(称为A
)。对于此滚动视图,属性pagingEnabled
设置为YES
。在屏幕的右侧,我有一个UIButton
,它附加到self.view
,不会滚动滚动视图。
点击后,此按钮会在UIView
内显示另一个UIScrollView
(称为B
),其内部会垂直滚动。此滚动视图包含UIButton
和UILabel
的列表。每个UIButton
作为UIImage
作为backgroundImage。我使用UIButton
代替UIImageView
,因为这样可以轻松管理图片上的触摸事件。 UILabel
包含每张图片的说明。
问题:
对于A scroll view
中的每个页面,我需要更改UIButton
中包含的B scroll view
,因为每个页面都有不同的图像列表。因此,在scrollView:didEndScrollingAnimation
滚动视图委托方法中,我从视图中移除了旧的UIButton
和旧的UILabel
,并且还从包含它们的NSArray
中删除了。
我创建了UIButton
和UILabel
的新列表,我添加到self.view
并在数组中插入[array addObject:]
。
在可变数量的滚动后,应用会收到内存警告消息,并且会从系统中删除。
我使用ARC,所以几乎不可能理解旧对象是否被处理(并且在任何情况下都是非常困难的,因为它们是系统对象)。
有什么想法吗?