ios NavigationController

概览

  • GameKit.framework 只用于ios设备之间连接,多用于游戏
  • videoToolBox是编解码的包
  • 未来几年FB将在视频沟通上下功夫
  • AVFoundation框架

UINavigationController基本使用

导航控制器使用注意事项:
- 创建控制器的同时指定它的根控制器
- 显示下一个控制的时候,
- 创建一个要 push 到的控制器
- push的时候,需要获取到当前控制器的导航控制器才能进行 push 操作
- 返回:
- 返回上一个控制: popViewControllerAnimated:
- 返回到根控制器: popToRootViewControllerAnimated:
- 返回到指定的控制器: popToViewController: animated:
注意:这个指定的控制器必须是已经存在于导航控制器栈内的控制器.

UINavigationController控制器之间传值(通过storyboard拖线的方式实现跳转的时候系统自动调用这个方法)

#pragma mark - Navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    NSString *str = self.textField.text;
    MRGreenViewController *greenController = segue.destinationViewController;
    greenController.title = str;
  }

利用CocoaPods发布框架

利用pod trunk发布程序


注册
  • pod trunk register 邮箱 '用户名' --description='电脑描述'
查收邮件
接下来查看个人信息
  • pod trunk me
  - Name:     MJ Lee
  - Email:    xxxxxx@qq.com
  - Since:    January 28th, 03:53
  - Pods:     None
  - Sessions:
    - January 28th, 04:28 - June 5th, 04:34. IP: xxx.xxx.xxx.xxx Description: Macbook Pro
  • 中间可能遇到这种错误
NoMethodError - undefined method 'last' for #<Netrc::Entry:0x007fc59c246378>
  • 这时候需要尝试更新gem源或者pod
    • sudo gem update --system
    • sudo gem install cocoapods
    • sudo gem install cocospods-trunk
创建podspec文件
  • 接下来需要在项目根路径创建一个podspec文件来描述你的项目信息
    • pod spec cretae 文件名
    • 比如pod spec cretae MJExtension就会生成一个MJExtension.podspec
填写podspec内容
Pod::Spec.new do |s|
  s.name         = "MJExtension"
  s.version      = "0.0.1"
  s.summary      = "The fastest and most convenient conversion between JSON and model"
  s.homepage     = "https://github.com/CoderMJLee/MJExtension"
  s.license      = "MIT"
  s.author             = { "MJLee" => "xxxxx@qq.com" }
  s.social_media_url   = "http://weibo.com/exceptions"
  s.source       = { :git => "https://github.com/CoderMJLee/MJExtension.git", :tag => s.version }
  s.source_files  = "MJExtensionExample/MJExtensionExample/MJExtension"
  s.requires_arc = true
end
  • 值得注意的是,现在的podspec必须有tag,所以最好先打个tag,传到github
    • git tag 0.0.1
    • git push --tags
检测podspec语法
  • pod spec lint MJExtension.podspec
发布podspec
检测
  • pod setup : 初始化
  • pod repo update : 更新仓库
  • pod search MJExtension
仓库更新
  • 如果仓库更新慢,可以考虑更换仓库镜像
    • pod repo remove master
    • pod repo add master http://git.oschina.net/akuandev/Specs.git

使用物理引擎

  • 创建行为 并将具有该行为的view添加到该行为中
  • 设置参照视图
  • 创建物理仿真行为
  • 将物理仿真行为添加到动画

demo 演示

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是 iOS Navigation Controller 中常用的一些方法的详解: 1. pushViewController:animated: 方法:将一个新的视图控制器推入导航栈中,并在导航条上显示一个新的视图控制器的标题和返回按钮。可以通过 animated 参数来控制是否显示动画效果。 2. popViewControllerAnimated: 方法:从导航栈中弹出当前的视图控制器,并返回上一个视图控制器。可以通过 animated 参数来控制是否显示动画效果。 3. popToViewController:animated: 方法:从导航栈中弹出所有在指定视图控制器之上的视图控制器,并返回到指定的视图控制器。可以通过 animated 参数来控制是否显示动画效果。 4. popToRootViewControllerAnimated: 方法:从导航栈中弹出所有的视图控制器,并返回到根视图控制器。可以通过 animated 参数来控制是否显示动画效果。 5. setViewControllers:animated: 方法:设置导航栈中的所有视图控制器,并可以通过 animated 参数来控制是否显示动画效果。 6. topViewController 属性:获取当前导航栈中的顶部视图控制器。 7. visibleViewController 属性:获取当前导航栈中可见的视图控制器。 8. navigationBar 属性:获取导航条对象,可以通过该对象修改导航条的样式或添加自定义视图。 以上是 iOS Navigation Controller 中常用的一些方法和属性的详解,掌握这些方法可以更好地实现导航控制器的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值