2009-05-21 43 views
3

重绘基本上我有这个清除与卡布奇诺(目标-J)

@implementation MyView : CPView 
{ 
    CPArray MyPanelArray; 
} 

// Populate the MyPanelArray and position each panel 
- (void)initMyView 
{ 
    ... 
} 

MyPanels是用来将图像非常包装。当所有事情都被初始化的时候,它会很好。然后,我有一个滑块来操纵图像的我知道如何重绘一切都是一个新的实例,并在主要内容查看覆盖MyView的做一些像

// Has the correct effect, but feels wrong 
- (void)sliderAction:(id)sender 
{ 
    var myNewView = [MyView initWithPositionValue:[sender value]]; 
    [_contentView replaceSubview:_myView with:myNewView]; 
    _myView = myNewView; 
} 

的位置,只有这样,它的工作原理没事,但我怀疑这是“正确的方式”。

*我知道我可以使用CPCollectionView进行基本设置,但它不适用于我想要完成的工作。

在此先感谢。

回答

5

通过“重绘”你是指实际上做一个drawRect:或者只是移动/调整图像视图?如果是后者,则可以在_myView上调用setFrame:。

+0

哇!它是你,弗朗西斯科。凉。嗯,是的。更简单的问题是,我试图重新创建coverflow效果。我调整滑块,我需要所有的图像来改变位置和/或仿射变换剪切。我还没有开始制作动画,只是跳到新的位置。当调整滑块时,它会重新定位所有内容并在我尝试replaceSubview之前重新绘制旧状态的顶部:with :. – Felix 2009-05-21 18:22:12