编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识、前端、后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过!

介绍

Android Studio/IntelliJ IDEA的安卓代码生成插件,帮助提高app的开发速度。每一个Activity都需要XML布局,而Activity都包含这样的代码:

  • 相关view的变量
  • 为变量赋值(findViewById() )
  • 为button设置listeners(setOnClickListener() 方法)

如果不用写这些代码,而是自动生成,那该多好。于是想找个能自动生成代码的插件。由于没有找到这种插件我决定自己写一个。幸运的是我此时没有项目缠身,所以可以花点时间在上面。就这样2011年产生了第一个版本。2014年我决定彻底重写这个项目,添加测试并拆分成两个项目。

从JetBrains仓库安装

你可以从repository安装这个插件:Preferences/Settings->Plugins->Browse repositories... 然后在搜索框输入Android code Generator。


下载与安装

插件的所有版本都在 releases中。你可以从 最新的发行版下载zip文件并安装。

How does it work

插件会检索xml文件中所有包含android:id属性的view。它收集view的类型和 id,根据对象的类型和id生成变量、赋值语句、imports以及方法。更多信息到android-codegenerator-library 项目

如何使用

找到菜单选项

不管是在layout目录中的xml文件,还是menu目录中的xml文件你都能右键弹出Generate Android Code 菜单项。可以在编辑器中右键也可使在项目的目录树中右键


生成Activity

生成Activity的Menu

修改之后再生成

Preference中设置插件

特点

有几个非常有用的功能:

  • 从layout中生成Activity类
  • 从layout中生成Fragment类
  • 从item layout中生成Adapter类
  • 从menu xml中生成menu代码
  • 根据代码生成文件
  • 创建文件之前可以预览,可以修改了再创建文件
  • detection of project package
  • detection of source directories in project
  • 可以在Preferences中编辑生成代码的模版:Activity, Fragment, Adapter, Menu

计划

提高插件的可用性。

作者

The author is Tomasz Morcinek @tmorcinek.

原文:http://tmorcinek.github.io/android-codegenerator-plugin-intellij/

安卓自动生成代码插件-Android code Generator(转)的更多相关文章

  1. SpringBoot 添加mybatis generator 自动生成代码插件

    自动生成数据层代码,提高开发效率 1.pom添加插件,并指定配置文件路径 <!-- mybatis generator 自动生成代码插件 --> <plugin> <gr ...

  2. mybatis-generator自动生成代码插件

    mybatis自动生成代码(实体类.Dao接口等)是很成熟的了,就是使用mybatis-generator插件. 它是一个开源的插件,使用maven构建最好,可以很方便的执行 插件官方简介: http ...

  3. mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)

    mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...

  4. mybatis-generator自动生成代码插件使用详解

    mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间,今天自己研究了一下,也分享一下使用心得供 ...

  5. SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件

    原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...

  6. 使用mybatis插件自动生成代码以及问题处理

    1.pom.xml中加入依赖插件 <!-- mybatis generator 自动生成代码插件 --> <plugin> <groupId>org.mybatis ...

  7. mybatis 自动生成代码(mybatis generator)

    pom.xml 文件配置 引入 mybatis generator <properties> <mysql.connector.version>5.1.44</mysql ...

  8. springboot学习随笔(四):Springboot整合mybatis(含generator自动生成代码)

    这章我们将通过springboot整合mybatis来操作数据库 以下内容分为两部分,一部分主要介绍generator自动生成代码,生成model.dao层接口.dao接口对应的sql配置文件 第一部 ...

  9. SSM 框架基于ORACLE集成TKMYBATIS 和GENERATOR自动生成代码(Github源码)

    基于前一个博客搭建的SSM框架 https://www.cnblogs.com/jiangyuqin/p/9870641.html 源码:https://github.com/JHeaven/ssm- ...

随机推荐

  1. python操作浏览器及截图小结

    近期做网页自动化用到内容小结 1.打开浏览器1)打开默认配置的浏览器from selenium import webdriverdriver = webdriver.Firefox()"&q ...

  2. gzip1

    经过GZIP压缩后页面大小可以变为原来的30%甚至更小.要实现GZIP压缩页面需要浏览器和服务器共同支持, 实际上就是服务器压缩,传到浏览器后浏览器解压并解析.浏览器那边不需要我们担心,因为现在绝大多 ...

  3. ClassNotFoundException: javax.validation.ValidatorFactory

    spring mvc 程序. 浏览器一访问controller 则出现: ClassNotFoundException: javax.validation.ValidatorFactory ... 很 ...

  4. 图像识别___YUV学习手记

    视觉专家很早以前就知道,人眼对亮度分辨率的敏感度高于对色彩分辨率的敏感度. 这就是早期模拟和数字压缩形式的主要动因.视频信号会分解为亮度和色度,这两个是组成色彩的元素,这类似于图像可以分解为红.绿.蓝 ...

  5. AES-128-CBC C语言代码

    /** * Copyright (c) 2007, Cameron Rich * * All rights reserved. * * Redistribution and use in source ...

  6. tomcat监控脚本(监控进程,测试接口,告警动作为发送邮件)

    服务器环境:centos7.2 64位 tomcat8.5.6 tomcat 监控功能共需要两个脚本,如下: initMonitor.sh #!/bin/sh #初始化监控脚本相关变量 export ...

  7. JSON数据的解析和生成(Swift)

    Codable public typealias Codable = Decodable & Encodable public protocol Decodable {} public pro ...

  8. C#格式化数值结果表(格式化字符串)

    字符 说明 示例 输出 C 货币 string.Format("{0:C3}", 2) $2.000 D 十进制 string.Format("{0:D3}", ...

  9. python 多重继承 深度优先还是广度优先

    我们常说,python2 是深度优先,python3 是广度优先, 其实具体来说是 python2.2 及其以前是深度优先 python2.3及其以后就是广度优先了 python官网 讲解1 以及su ...

  10. 使用__future__实现从python2.7到python3.x的过渡

    参考链接:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386820023 ...