views:

421

answers:

1

Hey guys,

Although I've searched the Board and used google, I didn't get any useful results. I've trying to make a subclass of UIView loading its view from a xib file.

My approach is the following: 1. Creating a subclass (named mySubclass):

@interface mySubclass : UIView {

}

@end
  1. Creating a view through: Add New File... User Interface View XIB

  2. Connecting the Xib and the subclass: In IB select the View and set the class to mySubclass.

  3. In my viewController I make an instance of my new subclass and add to my view.

    -(void)viewDidLoad {
    mySubclassIns = [[mySubclass alloc] initWithFrame:CGRectMake(0, 300, 320, 20)]; [self.view addSubview:mySubclassIns];
    [super viewDidLoad]; }

Result:

Noting shows up in my App :( If I don't set it up programmatically but rather with IB it doesn't work either. (Am I setting it up right when choosing a view in IB and set the class to myClass?)

I would be really thankful for your help!

Thanks in advance.

+1  A: 

you need to implement

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

it's given by default in implementation file... you just need ti uncomment it and implement it with your nib name...

mihirpmehta
but I only want to add a certain area, not the whole thing. (My example size was not optimal chosen)
rdesign
i don't it's related with your question or not but [super viewDidLoad]; should be first line of your -(void)viewDidLoad {
mihirpmehta
uups, your right thanks :)
rdesign