ios:如何从IB中的一个视图创建两个不同的视图?

时间:2011-12-12 22:03:48

标签: ios uiview interface-builder

我在Intefacebuilder中创建了一个自定义UIView。在我的ViewController中,我想创建两个UIViews实例。

所以这里有一些代码:

@interface MeineFinanzenViewController : UIViewController <UIGestureRecognizerDelegate> {

UISwipeGestureRecognizer* swipeLeft;
UISwipeGestureRecognizer* swipeRight;

//... other stuff

SaldoView* ausgabenView;
SaldoView* einnahmenView;

}

//...other stuff
@property (strong,nonatomic) IBOutlet SaldoView* ausgabenView;
@property (strong,nonatomic) IBOutlet SaldoView* einnahmenView;
//...other stuff

所以我连接了两次相同的视图。首先是ausgabenView,其次是einnahmenView。但之后,ausgabenView成为与einnahmenView相同的对象。实际上我希望有两个彼此独立的独立物体。现在我问自己如何实现这个目标?

任何提示?

2 个答案:

答案 0 :(得分:1)

您应手动加载视图:

- (SaldoView *)loadCustomView {

    NSArray* nibViews = [[NSBundle mainBundle] loadNibNamed:@"NibFileName" owner:nil options:nil];
    for (id object in nibViews) {
        if ([object isKindOfClass:[SaldoView class]]) {
            return (SaldoView *)object;
        }
    } 
    return nil;
}

创建两个视图实例

    SaldoView* ausgabenView = [self loadCustomView];
    SaldoView* einnahmenView = [self loadCustomView];  

答案 1 :(得分:-1)

如果您通过图形方式编辑nib文件来创建视图 - 就像您看到的那样 - 那么如果您想要两个视图,那么您可以从库中将两个视图拖到编辑器上。然后将一个连接到每个插座。