NSPopover

作者: L柠_檬 | 来源:发表于2016-08-31 18:17 被阅读319次
屏幕快照 2016-08-31 下午6.08.46.png
#import "ViewController.h"
#import "PopViewController.h"

@interface ViewController ()

@property (nonatomic ,strong)PopViewController *pop;

@property (nonatomic ,strong)NSPopover *popover;

@end
@implementation ViewController

- (void)viewDidLoad {
    
    [super viewDidLoad];

    // Do any additional setup after loading the view.
    
    NSButton *button = [[NSButton alloc]init];
    
    button.frame = CGRectMake(100, 100, 100, 30);
    
    [button setTitle:@"确认签收"];
    
    [button setTarget:self];
    
    
    [button setAction:@selector(buttonClick:)];
    
    [self.view addSubview:button];
    
    //需要添加内容在PopViewController类中实现
    //PopViewController继承NSViewcontroller的类
    self.pop = [[PopViewController alloc] initWithNibName:@"PopViewController" bundle:nil];
    self.popover= [[NSPopover alloc] init];
    [self.popover setContentSize:NSMakeSize(100.0f, 200.0f)];
    [self.popover setContentViewController:self.pop];
    [self.popover setAnimates:NO];
    self.popover.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];

}

- (void)buttonClick:(NSButton *)button{
    
    if (self.popover.shown) {
        
        [self.popover performClose:button];

    }else{
        
        NSRect cellRect = [button bounds];
        [self.popover showRelativeToRect:cellRect ofView:button preferredEdge:NSMaxXEdge];
    }

}

相关文章

网友评论

      本文标题:NSPopover

      本文链接:https://www.haomeiwen.com/subject/dmfcettx.html