02-Popover代码实现
来源:互联网 发布:颜色分辨软件 编辑:程序博客网 时间:2024/05/16 03:25
Popover代码实现
这一小节我们主要通过代码来实现popover跳转来学习popover更多的一些常用属性
效果预览
ViewController.swift
import UIKitclass ViewController: UIViewController { @IBOutlet weak var testButton: UIButton! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } @IBAction func textButtonClick(sender: AnyObject) { print("你点击到人家啦~~~") } //UIBarButtonItem @IBAction func popoverButtonClick(sender: AnyObject) { //1.创建popover的目标控制器 let desVC = UIViewController() desVC.view.backgroundColor = UIColor.purpleColor() //2.设置控制器跳转样式 desVC.modalPresentationStyle = UIModalPresentationStyle.Popover //3.获取目标控制器的popover对象 let popoverVC = desVC.popoverPresentationController popoverVC?.backgroundColor = UIColor.redColor() //4.设置箭头方向 popoverVC?.permittedArrowDirections = UIPopoverArrowDirection.Unknown //4.跳转 //非UIBarBUttonItem if let btn = sender as? UIButton { //设置来源视图 popoverVC?.sourceView = btn //设置参考点 popoverVC?.sourceRect = btn.bounds //忽略外部点击 默认为false 如果设置为true 表示 点击外部popover不会消失 需要手动添加按钮消失 如果为false 表示点击外部视图 popover会消失 desVC.modalInPopover = false //设置点击穿透视图 popoverVC?.passthroughViews = [testButton] } else if let item = sender as? UIBarButtonItem //UIBarBUttonItem { //UIBarButtonItem 设置参考点无效 设置来源视图是通过barButtonItem属性 popoverVC?.barButtonItem = item } //model跳转 presentViewController(desVC, animated: true) { () -> Void in } } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. }}
- 总结
popover属性
- permittedArrowDirections:设置箭头方向 系统默认为UnKnown
- sourceView:来源视图(只针对非UIBarButtonItem)
- 原因:UIBarButtonItem不是UIView的子类
- barButtonItem:来源视图(只针对UIBarButtonItem)
- sourceRect:目标参考点(只针对非UIBarButtonItem,UIBarButtonItem设置无效)
- passthroughViews:设置穿透视图(可以点击该视图交互事件)
UIViewController属性
- preferredContentSize:设置popover的大小
- modalInPopover:是否忽略外部点击(默认为false 如果设置为true 表示 点击外部popover不会消失 需要手动添加按钮消失 如果为false 表示点击外部视图 popover会消失)
0 0
- 02-Popover代码实现
- popover
- iphone利用UIPopoverPresentationController实现popover
- bootstrap 实现弹出框popover,动态改变popover内容
- IOS悬浮窗口之——Popover实现原理分析
- IOS悬浮窗口之——Popover实现原理分析
- IOS悬浮窗口之——Popover实现原理分析
- Bootstrap popover 实现鼠标移入移除显示隐藏功能
- ios气泡弹出框popover效果系统原生方法实现
- iOS: popover
- Popover 初探
- Popover.js
- iOS6和iOS7代码的适配(5)——popOver
- Bootstrap中的弹出框插件popover.js中的参数title、content不能使用html代码
- Bootstrap Popover 点击Popover外区域自动关闭Popover
- UIViewController (popover view controller)
- iphone popover库
- iOS: popover window effect
- tools类,自定义的方法
- Maven(3)坐标
- 数据结构实验之排序四:寻找大富翁
- Android Camera开发系列(上)——Camera的基本调用与实现拍照功能以及获取拍照图片加载大图片
- Django1.9后台变为中文
- 02-Popover代码实现
- 【unity实用技能】unity所有特殊文件夹的用途
- UIKit Dynamics
- android后台下载多文件切换界面更新问题
- ssh免密登录配置问题
- maven私服配置-发布工程版本到nexus
- js中的this指向
- 课堂笔记——数组与指针
- Logstash处理json格式日志文件的三种方法