簡體   English   中英

如何在iOS的“彈出”窗口中打開.nib文件?

[英]How to open a .nib file in a “popup” window , iOS?

我的應用程序中有一個.nib文件,我想將其顯示為“彈出”窗口給用戶。

我想要這樣的結果:

在此處輸入圖片說明

在這里,您可以看到一個空的帶有X的“彈出”窗口,用於關閉。准確地說,這是一個MT彈出窗口,但遺憾的是,您只能使用html而不是view來加載它,例如.nib文件。

有誰知道我如何創建一個這樣的彈出窗口來顯示.nib文件或有現成的第三方解決方案?

自定義UIView是您想要的朋友。

因此,創建一個具有超級UIView的類。

創建一個Objective-C類調用。 例如我稱我的

您的標頭(.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]; 您可能需要設置一個與控制器通信的委托,以便在關閉視圖等時執行某些操作。

希望a能夠點擊關閉的自定義視圖以將其關閉,創建一個UIView並在UITapGestureRecognizer上放置一個UITapGestureRecognizer ,以關閉您的自定義視圖並將其放置在自定義視圖下方並覆蓋整個屏幕。

希望這可以幫助,

BooRanger

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM