报告在 plugin.xml 文件中注册的任何操作,并在其构造函数内初始化它们的表示(文本、描述或图标)。
在构造函数中加载表示会导致分配资源,这可能并非必要。 更有效的方式是利用 AnAction 和其他基类的无实参构造函数,并遵循在 plugin.xml 中设置文本、描述和图标的约定。 只有当操作实际显示在 UI 中时,IDE 才会加载文本、描述和图标。
设置文本、说明和图标的约定如下:
plugin.xml 文件中的操作设置 id 特性。
icon 特性。
<actions> 中重写):
action.<action-id>.text=翻译后的操作文本action.<action-id>.description=翻译后的操作描述不良示例:
// NewKotlinFileAction.kt
internal class NewKotlinFileAction : AnAction(
KotlinBundle.message("action.new.file.text"),
KotlinBundle.message("action.new.file.description"),
KotlinIcons.FILE
)
<action
class="org.jetbrains.kotlin.idea.actions.NewKotlinFileAction"
</action>
正确示例:
// NewKotlinFileAction.kt
internal class NewKotlinFileAction : AnAction()
<action
id="Kotlin.NewFile"
class="org.jetbrains.kotlin.idea.actions.NewKotlinFileAction"
icon="org.jetbrains.kotlin.idea.KotlinIcons.FILE">
</action>
# KotlinBundle.properties
action.Kotlin.NewFile.text=Kotlin 类/文件
action.Kotlin.NewFile.description=创建新的 Kotlin 类或文件
2023.2 最新变化