iOS开发之使用dyci实时调试UI

   如果你的项目是使用代码布局的话,在代码里面对控件的布局做一些调整时,是不能实时看到修改的效果的,每次修改都需要重新跑一下工程。而通过使用dyci这个工具,它可以在程序运行的时候进行代码注入,而无需重新启动工程,也能看到实时修改的效果,这对调试UI是很有帮助的。下面介绍一下具体的使用方法。

   1、安装dyci,只需要运行一下install.sh脚本就可以了。在安装成功以后,重启XCode,在Product菜单下,会多出一个Recompile and inject选项。

  git clone https://github.com/DyCI/dyci-main.git
  cd dyci-main/Install/
  sudo sh install.sh

   2、下载最新版本的dyci.framework,目前最新的版本是v0.1.5.6。

   3、将framework添加到你的工程中,并在Other Linker Flags设置中添加-ObjC标签,因为dyci库里有Category,需要加此flag,以使库中Category生效。

   4、如果在调整完UI后,要立即看到效果的话,还需要在代码里面添加updateOnClassInjection方法,代码注入成功以后,会回调这个方法,可以在这个方法里面让页面重新布局,或者重新构建view。

UIView
- (void)updateOnClassInjection {    
   [self setNeedsLayout];  
   [self setNeedsDisplay];
}

UIViewControllers 
- (void)updateOnClassInjection {    
   if ([self isViewLoaded]) {
      UIView * viewSuperView = view.superview;
      [self.view removeFromSuperview];
      self.view = [self recreateView]; // <-- Custom metod of view recreation
      [viewSuperView addSubview:[self view]];
   }
}

   5、调整页面布局,然后保存,再按下control+x快捷键,会看到有代码注入成功的log打印出来。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值