Android Studio 不会按字典顺序重新排列导入

Ben*_*min 6 import android intellij-idea android-studio

鉴于以下进口

import javax.inject.Inject
import kotlinx.android.synthetic.main.fragment.*
Run Code Online (Sandbox Code Playgroud)

control+ option+时,Android Studio 会重新排列为以下内容o

import kotlinx.android.synthetic.main.fragment.*
import javax.inject.Inject
Run Code Online (Sandbox Code Playgroud)

这不是按字典顺序排列的。由于这个原因,我的pre-commit钩子运行ktlint失败。有没有办法解决这个问题?

Jef*_*uke 6

最新的 IntelliJ IDEA/Android Studio 可能无法符合Android Kotlin 风格指南中的完整规范。因此,目前在 IntelliJ IDEA / Android Studio 中没有直接的方法来排列导入的字典顺序。

目前,您可能需要通过在项目根目录的.editorconfig文件中禁用“导入排序”来禁用 Klint 的此检查:

[*.{kt,kts}]
disabled_rules = import-ordering
Run Code Online (Sandbox Code Playgroud)

这将禁用您项目中的检查。


Lpp*_*Edd 3

IntelliJ IDEA / Android Studio 不允许您按字母顺序排列导入,无论是在 Java 还是 Kotlin 中。
然而,Java 具有导入布局部分,它可以为您提供一些控制。但仍然不可能按照您的意愿进行准确的排序。

在此输入图像描述

这在Kotlin 中不可用,但现在在 Kotlin 中也可用。您可以查看https://youtrack.jetbrains.com/issue/KT-10974