2009-05-21 70 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