我开始在Android Studio中使用Kotlin,但我想检查Kotlin来源,就像我可以按 Ctr-B 或 Cmd-B 一样#34跳到宣言"查看任何标准Java类的源代码。
例如,如果我采用默认的Android Studio Kotlin项目并添加一行调用标准Kotlin listOf()
:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
listOf("hello", "goodbye");
}
并在listOf()
上按 Ctr-B 我只能获得以下内容:
public fun <T> listOf(vararg elements: T): kotlin.collections.List<T> { /* compiled code */ }
如果我点击Choose Sources
,我无法在出现的目录中找到源文件。如何设置Android Studio以查看这些标准Kotlin类的来源?
答案 0 :(得分:5)
在反编译的类文件中,您需要点击Choose Sources
:
然后您将看到一个如下所示的对话框:
您将无法找到kotlin-stdlib
目录中的来源。相反,您需要向下滚动到kotlin-stdlib-common
:
您可以在哪里选择来源。 jump to declaration
命令现在按预期工作:
/** Returns a new read-only list of given elements. The returned list is serializable (JVM). */
public fun <T> listOf(vararg elements: T): List<T> = if (elements.size > 0) elements.asList() else emptyList()
/** Returns an empty read-only list. The returned list is serializable (JVM). */
@kotlin.internal.InlineOnly
public inline fun <T> listOf(): List<T> = emptyList()