加载/重新加载xib uiview
我试图用以下代码加载自定义键盘的xib文件。之后,我需要卸载,然后再次重新加载。我不明白如何重新加载此代码。我想知道怎么做加载/重新加载xib uiview,uiview,keyboard,load,xib,init,Uiview,Keyboard,Load,Xib,Init,我试图用以下代码加载自定义键盘的xib文件。之后,我需要卸载,然后再次重新加载。我不明白如何重新加载此代码。我想知道怎么做 - (id)init { UIInterfaceOrientation orientation = [[UIDevice currentDevice] orientation]; CGRect frame; if(UIDeviceOrientationIsLandscape(orientation)) frame = CGRectMake(0, 0, 480, 1
- (id)init {
UIInterfaceOrientation orientation = [[UIDevice currentDevice] orientation];
CGRect frame;
if(UIDeviceOrientationIsLandscape(orientation))
frame = CGRectMake(0, 0, 480, 162);
else
frame = CGRectMake(0, 0, 320, 216);
self = [super initWithFrame:frame];
if (self)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"PMCustomKeyboard" owner:self options:nil];
[[nib objectAtIndex:0] setFrame:frame];
self = [nib objectAtIndex:0];
[[NSBundle mainBundle] loadNibNamed:@"KeyBoardAccView_iPhone" owner:self options:nil];
}
[self.altButton setTitle:kAltLabel forState:UIControlStateNormal];
[self.returnButton setTitle:kReturnLabel forState:UIControlStateNormal];
self.returnButton.titleLabel.adjustsFontSizeToFitWidth = YES;
[self loadCharactersWithArray:kChar];
[self.spaceButton setBackgroundImage:[PMCustomKeyboard imageFromColor:[UIColor colorWithWhite:0.5 alpha:0.5]]
forState:UIControlStateHighlighted];
self.spaceButton.layer.cornerRadius = 7.0;
self.spaceButton.layer.masksToBounds = YES;
self.spaceButton.layer.borderWidth = 0;
[self.spaceButton setTitle:kSpaceLabel forState:UIControlStateNormal];
return self;
}
-(void)setTextView:(id<UITextInput>)textView {
if ([textView isKindOfClass:[UITextView class]])
[(UITextView *)textView setInputView:self];
else if ([textView isKindOfClass:[UITextField class]])
[(UITextField *)textView setInputView:self];
_textView = textView;
NSLog(@"setTextView");
}
-(id<UITextInput>)textView {
return _textView;
}
-(id)init{
UIInterfaceOrientation方向=[[UIDevice currentDevice]方向];
CGRect帧;
if(UIDeviceOrientationIsLandscape(方向))
frame=CGRectMake(0,0480162);
其他的
frame=CGRectMake(0,03203216);
self=[super initWithFrame:frame];
如果(自我)
{
NSArray*nib=[[NSBundle mainBundle]loadNibNamed:@“PMCustomKeyboard”所有者:自选项:nil];
[[nib objectAtIndex:0]设置帧:帧];
self=[nib对象索引:0];
[[NSBundle mainBundle]loadNibNamed:@“KeyBoardAccView_iPhone”所有者:自我选项:无];
}
[self.altButton集合标题:kAltLabel forState:UIControlStateNormal];
[self.returnButton集合标题:kReturnLabel for状态:UIControlStateNormal];
self.returnButton.titleLabel.adjustsFontSizeToFitWidth=是;
[自加载字符阵列:kChar];
[self.spaceButton setBackgroundImage:[PMCustomKeyboard imageFromColor:[UIColor-WithWhite:0.5 alpha:0.5]]
forState:uicontrol状态突出显示];
self.spaceButton.layer.cornerRadius=7.0;
self.spaceButton.layer.masksToBounds=是;
self.spaceButton.layer.borderWidth=0;
[self.spaceButton集合标题:kSpaceLabel for状态:UIControlStateNormal];
回归自我;
}
-(void)setTextView:(id)textView{
if([textView IsKindof类:[UITextView类]])
[(UITextView*)textView设置输入视图:self];
else if([textView IsKindof类:[UITextField类]])
[(UITextField*)textView设置输入视图:self];
_textView=textView;
NSLog(@“setTextView”);
}
-(id)文本视图{
返回文本视图;
}
我刚刚发布了一个关于如何从.xib文件加载自定义UIView的示例项目
对于名为WidgetView的class/.xib文件,您需要一个额外的UIView出口和以下代码:
- (id)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
if(self) {
[self setup];
}
return self;
}
- (void)setup {
[[NSBundle mainBundle] loadNibNamed:@"WidgetView" owner:self options:nil];
[self addSubview:self.view];
}