Skip to content

PauliusVindzigelskis/NGSPopoverView

Repository files navigation

NGSPopoverView

Version Build Status Platform Language GitHub license

README

Universal simple popover view to show any kind of content which is subclass of UIView. Works in both - iPhone and iPad. Easy customizable.

Installation

Cocoapods

pod 'NGSPopoverView'

General

Include NGSPopoverView .h and .m files in your target. #import "NGSPopoverView.h" where needed.

FAQ

  • How to change color of it from white to whatever I need?

Use tintColor property. Default value is white.

  • I added UITableView inside popover, but it shows empty content. What did I do wrong?

NGSPopoverView uses AutoLayout to calculate it's size. Add height (required) and width (optional) constraints to UITableView as it doesn't have intrinsicContentSize property set up.

Samples

Rounded corners

rounded_corner.png

- (IBAction)buttonPressed:(UIButton *)sender {
    UILabel *label = [[UILabel alloc] init];
    label.text = @"Some text\nAnd some more";
    label.numberOfLines = 0;
    
    NGSPopoverView *popover = [[NGSPopoverView alloc] initWithCornerRadius:10.f
                                                                 direction:NGSPopoverArrowPositionAutomatic
                                                                 arrowSize:CGSizeMake(20, 10)];
    popover.contentView = label;
    
    [popover showFromView:sender animated:YES];
}

Fill screen

fill_screen.png

- (IBAction)buttonPressed:(UIButton *)sender {
    UILabel *label = [[UILabel alloc] init];
    label.text = @"Some text\nAnd some more";
    label.numberOfLines = 0;
    
    NGSPopoverView *popover = [[NGSPopoverView alloc] initWithCornerRadius:0.f
                                                                 direction:NGSPopoverArrowPositionAutomatic
                                                                 arrowSize:CGSizeMake(20, 10)];
    popover.contentView = label;
    popover.fillScreen = YES;
    
    [popover showFromView:sender animated:YES];
}

Mask source view with transparency

mask_view.png

- (IBAction)buttonPressed:(UIButton *)sender {
    UILabel *label = [[UILabel alloc] init];
    label.text = @"Some text\nAnd some more";
    label.numberOfLines = 0;
    
    NGSPopoverView *popover = [[NGSPopoverView alloc] initWithCornerRadius:10.f
                                                                 direction:NGSPopoverArrowPositionAutomatic
                                                                 arrowSize:CGSizeMake(20, 10)];
    popover.contentView = label;
    popover.shouldMaskSourceViewToVisible = YES;
    popover.maskedSourceViewCornerRadius = sender.frame.size.width/2.f;
    
    [popover showFromView:sender animated:YES];
}

Analytics

Hey.lt - Nemokamas lankytojų skaitliukas

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published