首页 > 代码库 > iOS.iPad.03.UIModal

iOS.iPad.03.UIModal

1、案例介绍:iPad上使用多种风格的ModalView,如图01,02,03,04,05

图01图02

图03图04

图05

2、代码

ViewController.h

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

- (IBAction)onclick:(id)sender;

@property (weak, nonatomic) IBOutlet UISegmentedControl *segControl;

@end

ViewController.m

#import "ViewController.h"
#import "ModalViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)onclick:(id)sender {
    
    ModalViewController *modalViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"modalViewController"];
    
    modalViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
    
    switch (self.segControl.selectedSegmentIndex) {
        case 0:
            modalViewController.modalPresentationStyle = UIModalPresentationFullScreen;
            break;
        case 1:
            modalViewController.modalPresentationStyle = UIModalPresentationPageSheet;
            break;
        case 2:
            modalViewController.modalPresentationStyle = UIModalPresentationFormSheet;
            break;
        default:
            modalViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
            break;
    }
    
    [self presentViewController:modalViewController animated:YES completion:nil];
    
    
}
@end

ModalViewController.h

#import <UIKit/UIKit.h>

@interface ModalViewController : UIViewController

- (IBAction)onclick:(id)sender;

@end

ModalViewController.m

#import "ModalViewController.h"

@interface ModalViewController ()

@end

@implementation ModalViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)onclick:(id)sender {
    [self dismissViewControllerAnimated:YES completion:nil];
}
@end

3、故事版