我的应用程序中有一个.nib文件,我希望将其作为“弹出窗口”窗口显示给用户。
我想得到这样的结果:
在这里你可以看到一个空的“弹出窗口”窗口,其中有一个X用于关闭。准确地说这是一个MT popup Window但遗憾的是你只能用html加载它而不是视图,比如.nib文件
有谁知道如何创建这样的弹出窗口以显示.nib文件或准备好第三方解决方案?
答案 0 :(得分:0)
自定义UIView就是你想要的朋友。
所以创建一个具有超级UIView的类。
创建一个objective-c类调用。例如,我称之为 CustomView
你的标题(.h)
#import <UIKit/UIKit.h>
@interface CustomView : UIView
@end
你的班级(.m) #import“CustomView.h”
@implementation CustomView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
[self loadNib];
}
return self;
}
- (void) loadNib
{
NSArray * subviewArray = [[NSBundle mainBundle] loadNibNamed:@"MyNib" owner:self options:nil];
UIView * mainView = [subviewArray objectAtIndex:0];
[self addSubview:mainView];
}
- (IBAction)close:(id)sender{
[self removeFromSuperview];
}
@end
现在在ViewController调用中添加自定义视图。你们很多人都希望在IBAction(按钮点击等)中使用它。
CGRect frame = CGRectMake(10,10,300, 460);
CustomView *view = [[CustomView alloc] initWithFrame:frame];
[self.view addSubview:view];
当您的自定义视图添加到主视图时,它将加载笔尖。
编辑:让x关闭它。在你的customView有一个IBACTION,只是说 [self removeFromSuperView]; 您可能希望设置一个与控制器通信的委托,以便在关闭视图等时执行某些操作。
希望能够点按关闭自定义视图以关闭它,创建UIView
在其上放置UITapGestureRecognizer
关闭自定义视图并将其放在自定义视图下方并覆盖整个视图屏幕。
希望这有帮助,
BooRanger