用卡布奇诺清除和重绘(Objective-J)

时间:2009-05-21 03:49:22

标签: cappuccino objective-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进行基本设置,但它不能用于我想要完成的任务。

提前致谢。

1 个答案:

答案 0 :(得分:5)

通过“重绘”你的意思是实际做一个drawRect:或只是移动/调整图像视图的大小?如果是后者那么你可以在_myView上调用setFrame: