1.使用阿里云的通义灵码方便快速开发
1.1下载插件File->plugin->marketplace
搜索
Tongyilingma
然后安装重启登录阿里云,确认
1.2 使用方法
输入信息描述 比如
//写一段冒泡排序
然后换行,输入public/private/protected方法会自动生成联想代码
tab键进行确认
esc取消
按键操作参考如下
接受行间代码建议 tab
废弃行间代码建议 esc
查看上一个行间推荐结果 Alt [
查看下一个行间推荐结果 Alt ]
手动触发行间代码建议 Alt P
2.快速json生成bean类
2.1下载插件File->plugin->marketplace
搜索
json2java
安装完成后建议重启studio
2.2 使用方法
右键java目录选择java class下面的那个JSON to java,粘贴json代码即可
3.快速生成parcelable序列化对象
3.1下载插件File->plugin->marketplace
搜索
android parcelable code formater
3.2使用方法
1.新建bean类
public class Test {
private String name;
private int age;
private int sex;
private String address;
private String phone;
private String email;
private String idCard;
}
选择要序列化的变量
按按键alt+insert,选择parcelable即可
4.配置live template模版
4.1 Files-Editor-LiveTemplate
4.2 使用方法
1.新增模版组
2.选择模版组进行插入模版操作
比如快速生成单例模式
private volatile static $className$ instance;
public static $className$ getInstance() {
if (instance == null) {
synchronized ($className$.class) {
if (instance == null) {
instance = new $className$();
}
}
}
return instance;
}
private $className$(){
}
其中classname是在Edit Variables中定义
其中abbreviation是缩写内容,在文本文档中输入ist再tab即可快速生产单例模式
下面的change是指定编程语言
还有其他参考如 快速生成注释带日期
//A:@xusibei add start. reason: $date$--start
//A:@xusibei add end $date$ --end
4.3 方法表
1.annotated(<annotation>)
返回类、方法、属性的注解
例如:annotated("java.lang.Deprecated"),返回@Deprecated注解
2.arrayVariable()
返回离光标位置最近的的数组类型的变量,itar和ritar模板使用了该变量
3.blockCommentEnd()
返回块极注释的结尾字符,比如java文件返回*/
4.blockCommentStart()
返回块极注释的开始字符,比如java文件返回/*
5.camelCase(<String>)
返回指定字符串的驼峰格式,例如camelCase("my_text_file") 返回myTextFile
6.capitalize(<String>)
将指定字符串的首字母大写,例如capitalize("name")返回Name
7.capitalizeAndUnderscore(<String>)
将指定字符串所有字符转为大写,并使用下划线分隔,例如capitalizeAndUnderscore("FooBar")返回FOO_BAR
8.castToLeftSideType()
如果有必要的话,将右侧表达式的类型强转为左侧类型
9.className()
获取当前类名
10.clipboard()
获取系统粘贴板的内容
11.commentEnd()
返回注释的结尾字符,单行注释返回空
12.commentStart()
返回注释的开始字符
13.componentTypeOf(<array>)
返回数组的元素类型,例如使用arrayVariable()的返回值,模板itar使用了该方法
14.concat(<String>, ...)
串联所有的字符串
15.currentPackage()
返回当前包名
16.date([format])
返回当前时间,format定义时间格式
17.decapitalize(<String>)
首字母改为小写
18.descendantClassEnum(<String>)
返回子类列表,例如:descendantClassEnum("java.lang.Number")返回java.lang.Float, java.math.BigDecimal
19.enum(<String>, ...)
返回一个供用户选择的字符串列表
20.escapeString(<String>)
转义字符,例如将tab转为\t
21.expectedType()
返回其右侧表达式返回类型
22.fileName()
返回文件名称,包括后缀
23.fileNameWithoutExtension()
返回文件名称,不包括后缀
24.filePath()
返回当前文件的绝对路径
25.fileRelativePath()
返回当前文件相对于Project的相对路径
26.firstWord(<String>)
返回字符串的首个单词,例如firstWord("one tow three") 返回one
27.groovyScript(<String>, [arg, ...])
执行groovy脚本,第一个参数可以是脚本内容,也可以是保存脚本内容的文件路径,其余参数都是传递给脚本的参数。另外,可以在脚本中使用_editor变量来访问当前的编辑器
28.guessElementType(<Collection>)
返回一个集合中的元素类型
29.iterableComponentType(<Iterable>)
返回一个可迭代对象的元素类型
30.iterableVariable()
返回距离当前位置最近的一个可迭代对象,数组或者集合,如果有多个则提供给用户选择列表。模板iter使用了该方法
31.lineCommentStart()
返回行注释的开头字符
32.lineNumber()
返回当前行号
33.lowercaseAndDash(<String>)
将字符串转换成小写,然后使用-中横线连接,例如lowercaseAndDash("MyExampleName")返回my-example-name
34.methodName()
返回当前方法名称
35.methodParameters()
返回方法参数列表
36.methodReturnType()
返回方法的返回值类型
37.qualifiedClassName()
返回当前类的全路径名称
38.regularExpression(<String>, <Pattern>, <Replacement>)
从<String>定义的字符串中按照<Pattern>定义的正则表达式规则找到匹配字符串,找到后使用<Replacement>替换
39.rightSideType()
返回右侧表达式的类型
40.snakeCase(<String>)
使用下划线连接字符串,例如snakeCase("fooBar")返回foo_bar
41.spaceSeparated(<String>)
使用空格分隔字符串,例如spaceSeparated(fooBar)返回foo Bar
42.spacesToUnderscores(<String>)
使用下划线连接字符串,例如spacesToUnderscores("foo bar BAZ")返回foo_bar_BAZ
43.substringBefore(<String>, <Delimeter>)
返回<String>中<Delimeter>前面的字符串,例如:substringBefore("common.js",".")返回common
44.subtypes(<String>)
返回变量的子类型
45.suggestFirstVariableName(<String>)
46.suggestIndexName()
返回一个推荐的索引值,例如for循环中使用i/j/k等
47.suggestVariableName()
根据变量类型或者表达式类型返回推荐的参数名称
48.time(format)
返回当前时分时间
49.typeOfVariable(<String>)
返回<String>定义的参数类型
50.underscoresToCamelCase(<String>)
将使用下划线连接的字符串转为驼峰名称字符,例如underscoresToCamelCase("foo_bar_baz")返回fooBarBaz
51.underscoresToSpaces(<String>)
将使用下划线连接的字符串改为使用空格连接
52.user()
返回当前用户
53.variableOfType(<String>)
返回执行类型的对象列表