我相信,这个问题是重复的,但我找不到它=(。如何创建自己的 UIView 类,它是从 (iPhone/iPad)*.xib 加载的
我正在尝试接下来的事情:
@interface CurtainView : UIView
...
- (id)init {
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
self = [[[NSBundle mainBundle] loadNibNamed:@"CurtainView_iphone" owner:self options:nil] objectAtIndex:0];
[self setFrame:CGRectMake(0, 0, 320, 460)];
}
else {
self = [[[NSBundle mainBundle] loadNibNamed:@"CurtainView_ipad" owner:self options:nil] objectAtIndex:0];
[self setFrame:CGRectMake(0, 0, 768, 1004)];
}
return self;
}
- (void)drawRect:(CGRect)rect
{
NSLog(@"there should be some animation on view appirance");
}
和 ...
CurtainView* curtain = [[CurtainView alloc] init];
NSLog(@"before");
[self.view addSubview:curtain];
[curtain drawRect:CGRectMake(0, 0, 320, 460)];
但在这种情况下,我没有得到我期望的结果,并且 drawRect 没有调用。我希望有一种简单的方法可以为通用应用程序创建自定义视图。