Git Product home page Git Product logo

zzuihelper's Introduction

ZZUIHelper

ZZUIHelper是为手写UI党(iOS)提供的辅助工具(Mac App),通过类似xib/sb的选择和编辑操作,可以自动生成对应的Objective-C代码,能够大大减少简单重复工作量。

演示视频:

<iframe width=640 height=498 src="https://v.qq.com/iframe/player.html?vid=e0384ltek23&tiny=0&auto=0">

更新记录

1.1.0

  • 1、加入ZZFLEX代码生成器,ZZUIHelper是一款完善的iOS敏捷开发框架,设计原则为“UI控件的模块化”,可大大提升开发和维护效率,开源地址:https://github.com/tbl00c/ZZFLEX
  • 2、优化部分逻辑代码。

主要功能

ZZUIHelper的主要功能是,根据我们配置去生成代码,目前可生成的代码模块包括:

  • 声明周期函数(addSubView等)
  • 代理方法(tableView等)
  • 事件响应方法(UIButton等)
  • 添加约束的布局方法(Masonry)
  • Getter方法(控件的生成方法,可配置各种属性)

目前提供了两种风格的代码生成器:

  • LazyLoad Creator

  • Setup UI Creator

可在“设置”-“Creator”中切换,并调整模块数据

使用方法

1. 新建文件

目前支持生成以下类为最外层容器类的代码

  • UIViewController
  • UIView
  • UITableViewCell
  • UICollectionViewCell
  • UIImageView
  • UIScrollView

2. 添加控件

从控件区点击需要的控件添加,支持自定义父类名

3. 编辑控件属性

选中元素区的控件后,可以根据需要在属性编辑区对某些属性进行编辑

4. 选择控件事件响应函数或代理方法

选中元素区的控件后,可以根据需要在属性编辑区选择需要的事件响应函数(支持修改方法名)和代理方法

5. 添加约束条件

注:设置必要的参数后,会自动勾选

6. 导出类文件

点ToolBar上的导出按钮,选择位置后可导出类文件

7. 其他

在设置中,支持修改类头部的版权信息,支持添加自定义的颜色和字体,支持个性化代码区风格设置。

其他

使用中的问题或者建议请联系:[email protected]

zzuihelper's People

Contributors

tbl00c avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zzuihelper's Issues

运行出错Assertion failure in -[MGSSyntaxController loadSyntaxDefinitions], /Users/libokun/Downloads/Fragaria-master/MGSSyntaxController.m:243

错误日志如下,请大哥帮忙看看,谢谢。
2019-05-27 14:23:40.830952+0800 ZZUIHelper[47325:2203436] *** Assertion failure in -[MGSSyntaxController loadSyntaxDefinitions], /Users/libokun/Downloads/Fragaria-master/MGSSyntaxController.m:243 2019-05-27 14:23:40.834005+0800 ZZUIHelper[47325:2203436] [General] An uncaught exception was raised 2019-05-27 14:23:40.834039+0800 ZZUIHelper[47325:2203436] [General] framework syntax definitions not found 2019-05-27 14:23:40.834202+0800 ZZUIHelper[47325:2203436] [General] ( 0 CoreFoundation 0x00007fff528c7cfd __exceptionPreprocess + 256 1 libobjc.A.dylib 0x00007fff7cf6da17 objc_exception_throw + 48 2 CoreFoundation 0x00007fff528e2a1a +[NSException raise:format:arguments:] + 98 3 Foundation 0x00007fff54b81c85 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 194 4 MGSFragaria 0x000000010046898a -[MGSSyntaxController loadSyntaxDefinitions] + 314 5 MGSFragaria 0x0000000100468091 -[MGSSyntaxController insertSyntaxDefinitions] + 65 6 MGSFragaria 0x000000010046798b -[MGSSyntaxController init] + 107 7 MGSFragaria 0x000000010046788a __37+[MGSSyntaxController sharedInstance]_block_invoke + 58 8 libdispatch.dylib 0x00000001004cff1b _dispatch_client_callout + 8 9 libdispatch.dylib 0x00000001004d1baa _dispatch_once_callout + 87 10 MGSFragaria 0x0000000100467835 +[MGSSyntaxController sharedInstance] + 117 11 MGSFragaria 0x000000010044a21d -[SMLSyntaxColouring syntaxDictionary] + 125 12 MGSFragaria 0x000000010044a17c -[SMLSyntaxColouring applySyntaxDefinition] + 44 13 MGSFragaria 0x0000000100449460 -[SMLSyntaxColouring initWithDocument:] + 2176 14 MGSFragaria 0x000000010046ca34 -[MGSFragaria embedInView:] + 3092 15 ZZUIHelper 0x000000010005676a -[ZZCodeHFileViewController viewDidLoad] + 154 16 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 17 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 18 AppKit 0x00007fff50019eea -[NSViewController view] + 30 19 AppKit 0x00007fff50151083 -[NSTabViewController _goodTabViewContentSize] + 254 20 AppKit 0x00007fff50150d58 -[NSTabViewController viewDidLoad] + 83 21 ZZUIHelper 0x0000000100013f53 -[ZZCodeAreaViewController viewDidLoad] + 51 22 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 23 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 24 AppKit 0x00007fff50019eea -[NSViewController view] + 30 25 AppKit 0x00007fff5002e326 -[_NSSplitViewItemViewWrapper wrapView] + 91 26 AppKit 0x00007fff5001b0dd -[NSSplitViewController _setupSplitView] + 590 27 AppKit 0x00007fff5001ae5d -[NSSplitViewController viewDidLoad] + 150 28 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 29 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 30 AppKit 0x00007fff50019eea -[NSViewController view] + 30 31 AppKit 0x00007fff5010a36f -[NSWindow _contentViewControllerChanged] + 109 32 Foundation 0x00007fff54acf941 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 331 33 AppKit 0x00007fff50016e28 -[NSWindow setValue:forKey:] + 111 34 AppKit 0x00007fff4ff6aa43 -[NSIBUserDefinedRuntimeAttributesConnector establishConnection] + 637 35 AppKit 0x00007fff4fe8de13 -[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1436 36 AppKit 0x00007fff5001f1c7 -[NSNib _instantiateNibWithExternalNameTable:options:] + 679 37 AppKit 0x00007fff5001ee23 -[NSNib _instantiateWithOwner:options:topLevelObjects:] + 136 38 AppKit 0x00007fff506ed61f -[NSStoryboard instantiateControllerWithIdentifier:] + 236 39 AppKit 0x00007fff4fe7ed31 NSApplicationMain + 702 40 ZZUIHelper 0x0000000100008872 main + 34 41 libdyld.dylib 0x00007fff7e73b3d5 start + 1 42 ??? 0x0000000000000003 0x0 + 3 ) 2019-05-27 14:23:40.839870+0800 ZZUIHelper[47325:2203436] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'framework syntax definitions not found' *** First throw call stack: ( 0 CoreFoundation 0x00007fff528c7cfd __exceptionPreprocess + 256 1 libobjc.A.dylib 0x00007fff7cf6da17 objc_exception_throw + 48 2 CoreFoundation 0x00007fff528e2a1a +[NSException raise:format:arguments:] + 98 3 Foundation 0x00007fff54b81c85 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 194 4 MGSFragaria 0x000000010046898a -[MGSSyntaxController loadSyntaxDefinitions] + 314 5 MGSFragaria 0x0000000100468091 -[MGSSyntaxController insertSyntaxDefinitions] + 65 6 MGSFragaria 0x000000010046798b -[MGSSyntaxController init] + 107 7 MGSFragaria 0x000000010046788a __37+[MGSSyntaxController sharedInstance]_block_invoke + 58 8 libdispatch.dylib 0x00000001004cff1b _dispatch_client_callout + 8 9 libdispatch.dylib 0x00000001004d1baa _dispatch_once_callout + 87 10 MGSFragaria 0x0000000100467835 +[MGSSyntaxController sharedInstance] + 117 11 MGSFragaria 0x000000010044a21d -[SMLSyntaxColouring syntaxDictionary] + 125 12 MGSFragaria 0x000000010044a17c -[SMLSyntaxColouring applySyntaxDefinition] + 44 13 MGSFragaria 0x0000000100449460 -[SMLSyntaxColouring initWithDocument:] + 2176 14 MGSFragaria 0x000000010046ca34 -[MGSFragaria embedInView:] + 3092 15 ZZUIHelper 0x000000010005676a -[ZZCodeHFileViewController viewDidLoad] + 154 16 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 17 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 18 AppKit 0x00007fff50019eea -[NSViewController view] + 30 19 AppKit 0x00007fff50151083 -[NSTabViewController _goodTabViewContentSize] + 254 20 AppKit 0x00007fff50150d58 -[NSTabViewController viewDidLoad] + 83 21 ZZUIHelper 0x0000000100013f53 -[ZZCodeAreaViewController viewDidLoad] + 51 22 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 23 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 24 AppKit 0x00007fff50019eea -[NSViewController view] + 30 25 AppKit 0x00007fff5002e326 -[_NSSplitViewItemViewWrapper wrapView] + 91 26 AppKit 0x00007fff5001b0dd -[NSSplitViewController _setupSplitView] + 590 27 AppKit 0x00007fff5001ae5d -[NSSplitViewController viewDidLoad] + 150 28 AppKit 0x00007fff5001adaf -[NSViewController _sendViewDidLoad] + 94 29 AppKit 0x00007fff5001a0b5 -[NSViewController _loadViewIfRequired] + 385 30 AppKit 0x00007fff50019eea -[NSViewController view] + 30 31 AppKit 0x00007fff5010a36f -[NSWindow _contentViewControllerChanged] + 109 32 Foundation 0x00007fff54acf941 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 331 33 AppKit 0x00007fff50016e28 -[NSWindow setValue:forKey:] + 111 34 AppKit 0x00007fff4ff6aa43 -[NSIBUserDefinedRuntimeAttributesConnector establishConnection] + 637 35 AppKit 0x00007fff4fe8de13 -[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1436 36 AppKit 0x00007fff5001f1c7 -[NSNib _instantiateNibWithExternalNameTable:options:] + 679 37 AppKit 0x00007fff5001ee23 -[NSNib _instantiateWithOwner:options:topLevelObjects:] + 136 38 AppKit 0x00007fff506ed61f -[NSStoryboard instantiateControllerWithIdentifier:] + 236 39 AppKit 0x00007fff4fe7ed31 NSApplicationMain + 702 40 ZZUIHelper 0x0000000100008872 main + 34 41 libdyld.dylib 0x00007fff7e73b3d5 start + 1 42 ??? 0x0000000000000003 0x0 + 3 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)

确实很不错

只是不习惯用这个 适合 无聊的时候玩玩 对于有些习惯敲代码的人 他们都是拒绝用鼠标点的。
不过这个 确实很好用 !给你个 star

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.