国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

UIPopoverController簡單用法(全代碼)

2019-11-14 18:29:57
字體:
來源:轉載
供稿:網友

 AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];    UINavigationController *nav =[[UINavigationController alloc]initWithRootViewController:[[ViewController alloc]init]];    self.window.rootViewController =nav;    [self.window makeKeyAndVisible];    return YES;}
View Code

 

ViewController.m

#import "ViewController.h"#import "View2Controller.h"@interface ViewController ()<UipopoverControllerDelegate>@PRoperty (nonatomic,strong) UIPopoverController *popoverButtonItem;@property (nonatomic,strong) UIPopoverController *popoverButton;@end@implementation ViewController //popoverButtonItem懶加載-(UIPopoverController *) popoverButtonItem{    if (!_popoverButtonItem) {        UINavigationController *nav= [[UINavigationController alloc]initWithRootViewController: [[View2Controller alloc]init]];     _popoverButtonItem= [[UIPopoverController alloc] initWithContentViewController:nav];     _popoverButtonItem.delegate = self;    }    return _popoverButtonItem;} //popoverButton懶加載-(UIPopoverController *) popoverButton{    if (!_popoverButton) {        _popoverButton= [[UIPopoverController alloc] initWithContentViewController:[[View2Controller alloc]init]];        _popoverButton.delegate = self;    }    return _popoverButton;} //1. 從BarButtonItem點擊彈出-(void) touchButtonItem:(UIBarButtonItem *)btn {    /**     *  從BarButtonItem上點擊   *  @param item:圍繞著哪個UIBarButtonItem顯示     *  @param permittedArrowDirections:箭頭指的方向     *  @param animated:動畫     */    [self.popoverButtonItem presentPopoverFromBarButtonItem:btn permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];}//2從界面上的某個按鈕或者某片區域彈出popOver,排除navigationBar或者TabBar上的點擊-(void) touchButton:(UIButton *)btn {    /**     * 從界面上的某個按鈕或者某片區域彈出popOver     *  @param presentPopoverFromRect: 指定箭頭所指區域的矩形框范圍(位置和尺寸)     *  @param inView: rect參數是以view的左上角為坐標原點(0,0)     *  @param permittedArrowDirections:箭頭指的方向     *  @param animated:動畫     */    [self.popoverButton presentPopoverFromRect:btn.bounds                                  inView:btn                permittedArrowDirections:UIPopoverArrowDirectionLeft                                animated:YES];}- (void)viewDidLoad {    [super viewDidLoad];    self.view.backgroundColor = [UIColor grayColor];    self.navigationItem.title = @"導航欄";    self.navigationItem.leftBarButtonItem =[[UIBarButtonItem alloc]initWithTitle:@"點我" style:UIBarButtonItemStyleDone target:self action:@selector(touchButtonItem:)];    //********************************************************************************    UIButton *btn =[[UIButton alloc]initWithFrame:CGRectMake(100, 100, 100, 50)];    [btn setTitle:@"點我啊" forState:UIControlStateNormal];    [btn setTintColor:[UIColor blueColor]];    [btn setBackgroundColor:[UIColor redColor]];    [btn addTarget:self action:@selector(touchButton:) forControlEvents:UIControlEventTouchUpInside];    [self.view addSubview:btn];}// UIPopoverControllerDelegate --在ARC環境下正確的做法是保持popover的生命周期。讓popover是strong類型的成員變量或屬性。 當收到UIPopoverController dismiss的消息的時候將popover=nil;這樣就可以正常便用了。- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController{    self.popoverButton = nil;    self.popoverButtonItem = nil;}
View Code

 

View2Controller.m

- (void)viewDidLoad{    [super viewDidLoad];    // 設置控制器在popover中顯示的尺寸 跟 view 一樣    self.preferredContentSize = self.view.frame.size;}
View Code

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 屯门区| 盐城市| 永寿县| 新绛县| 永寿县| 上虞市| 大方县| 怀安县| 肥西县| 峨眉山市| 锡林郭勒盟| 休宁县| 长汀县| 阜宁县| 东乌| 时尚| 晋州市| 武功县| 杭锦旗| 庄浪县| 彩票| 诸暨市| 西林县| 彰武县| 成武县| 伊春市| 永川市| 沙雅县| 古田县| 京山县| 镇巴县| 横山县| 越西县| 凤凰县| 嘉祥县| 武乡县| 安岳县| 临城县| 民丰县| 淮北市| 灵山县|