Android 活动模板在Kotlin中不起作用
希望您已经使用过Android默认提供的Live模板 比如: 它在KOTLIN中不可用?Android 活动模板在Kotlin中不起作用,android,kotlin,live-templates,Android,Kotlin,Live Templates,希望您已经使用过Android默认提供的Live模板 比如: 它在KOTLIN中不可用? 是否在Android Studio 3.0金丝雀版本中不可用?但未在Android Studio的Kotlin Live templates部分中添加日志模板 设置->编辑器->实时模板->Kotlin用于Kotlin模板 设置->编辑器->实时模板->AndroidLog用于AndroidLog模板 因此,在Kotlin代码中无法获得相同的AndroidLog模板 所以现在的问题是,如何使用Kotl
是否在Android Studio 3.0金丝雀版本中不可用?但未在Android Studio的Kotlin Live templates部分中添加日志模板 设置->编辑器->实时模板->Kotlin用于Kotlin模板 设置->编辑器->实时模板->AndroidLog用于AndroidLog模板 因此,在Kotlin代码中无法获得相同的AndroidLog模板 所以现在的问题是,如何使用Kotlin中的模板使用相同的日志函数 Ans:您可以在Android studio的Kotlin templates部分添加相同的日志模板(AndroidLog模板),如下例所示 然后它将在您的Kotlin代码中可用
我希望通过这种方式,您可以利用Kotlin中的日志函数模板 以下是分步指南: 首先,将AndroidLog模板复制并粘贴到Kotlin(只需选择它们并使用CMD+C、CMD+V(或Ctrl+C、Ctrl+V)
其次,您必须手动调整:
;
,因为Kotlin中不需要它
现在,您的方法名称将正确显示
解决方案1:TAG=类名。 模板文本:
private val TAG = "$className$"
private const val TAG = "$className$"
编辑变量->表达式:
groovyScript("_1.take(Math.min(23, _1.length()));", kotlinClassName())
groovyScript("_1.take(Math.min(23, _1.length()));", fileNameWithoutExtension())
解决方案2:TAG=文件名(可在Companion中使用)
模板文本:
private val TAG = "$className$"
private const val TAG = "$className$"
或:
编辑变量->表达式:
groovyScript("_1.take(Math.min(23, _1.length()));", kotlinClassName())
groovyScript("_1.take(Math.min(23, _1.length()));", fileNameWithoutExtension())
您不需要复制粘贴其他答案中提到的任何内容。在Android Studio的Live Templates部分中找到“适用于*”文本-单击“更改”按钮可显示所有作用域的列表。选择Kotlin(或其子节点之一)注意,一些来自Java的语句在Kotlin中不起作用(比如使用static关键字的语句)——最好为这些语句创建一个新的模板,而不是编辑现有的模板 是包含Android Kotlin所有模板的存储库 您只需下载存储库,复制目录并粘贴到Android Studio配置文件夹中 Android Studio的配置文件夹位于
Windows: C:\Users\%userName%\.AndroidStudio<version>\config\templates
Linux: ~AndroidStudio<version>/config/templates
macOS: ~/Library/Preferences/AndroidStudio<version>/templates
Windows:C:\Users\%userName%\.AndroidStudio\config\templates
Linux:~AndroidStudio/config/templates
macOS:~/Library/Preferences/AndroidStudio/templates
这是@pRaNaY@Leo和@Jaguar给出的所有好答案的组合,加上无标签和可变用途的奖金(无需键入“${}”)
模板文本:android.util.Log.d(“$className$”,“$methodName$$$$$contents$”)
适用于Kotlin:顶级、语句、类、表达式
变量表达式可以在下拉菜单中找到
对于logt,上述两个答案有效,但还需要将“定义”添加为“类”
感谢@Leo分享一个新的解决方案。正如你所说,它简单多了。在撰写此评论时接受的答案并不是重用模板的最佳方式。似乎Android Studio的Kotlin“开箱即用”支持仍在开发中(@Leo Droidcoder,谢谢!)只需下载.jar并通过“文件>导入设置”将其导入Android Studio即可。出色且清晰的解释。然而,无论我在kotlin下添加了什么模板,Android Studio都不会像Java那样为我工作。事实上,每当我开始编写
log
时,它都会建议使用对数函数哦,没有这些模板。我正在运行Android Studio 3.5。谢谢你的帮助!我尝试了不同的名称,没有任何建议。我还尝试了重新启动为。