使用'logt','logd','loge'等快捷方式在Intellij中记录Java非常简单。但我搬到Kotlin,我注意到那些快捷方式不再适用了。我不知道它是否与我的配置有关,但如果没有,我该如何解决这个问题?
答案 0 :(得分:11)
您应该创建单独的模板以使其正常工作 以下是分步指南:
首先,将AndroidLog模板复制并粘贴到Kotlin(只需选择它们并使用CMD + C,CMD + V(或Ctrl + C,Ctrl + V) 其次,您必须手动调整它们: 1. 登录(和其他人) 选择已登录项,然后按"编辑变量"
此外,请从模板末尾删除;
,因为您在Kotlin中不需要它。
现在您的方法名称将正确显示
<强> logt 强> 这个有点棘手。 解决方案1 TAG =班级名称。
private val TAG =&#34; $ className $&#34;
groovyScript(&#34; _1.take(Math.min(23,_1.length()));&#34;,kotlinClassName())
解决方案2 TAG =文件名(可在Companion中使用)
模板文字:
私人常规标签=&#34; $ className $
或:
companion object {
private const val TAG = "$className$"
}
编辑变量 - &gt;表达:
groovyScript(&#34; _1.take(Math.min(23,_1.length()));&#34;,fileNameWithoutExtension())
此外,它可能对某人有用
为了避免创建TAG
变量,您可以使用类名作为变量,例如:
Log.d("BaseActivity", "onCreate: ")
BaseActivity
是班级名称。
模板现在看起来像是:
android.util.Log.d("$CLASS_NAME$", "$METHOD_NAME$: $content$")
CLASS_NAME
变量在哪里:
groovyScript("_1.take(Math.min(23, _1.length()));", fileNameWithoutExtension())
答案 1 :(得分:4)
These are provided in IntelliJ as a Live Template configuration for AndroidLog
(found in Preferences -> Editor -> Live Templates
), and are applicable specifically to Java code:
There isn't anything broken in your configuration, but if you want to make these Live Templates available for Kotlin you will need to add new Live Template for AndroidLog
and make them applicable to Kotlin code.
https://www.jetbrains.com/help/idea/2017.1/creating-and-editing-live-templates.html
There's an open feature request to have them added as defaults here: https://youtrack.jetbrains.com/issue/KT-10464
答案 2 :(得分:0)
答案 3 :(得分:0)
在Android Studio 4.0中,有一个新的 AndroidLogKotlin 块。您可以在那里实现@LeoDroidcoder的解决方案。