【发布时间】:2020-05-27 07:51:13
【问题描述】:
我正在使用 Kotlin 进行开发。当我到达官方 Android 教程的片段部分时,我遇到了 supportFragmentManager。在 Kotlin 中可以用作变量,而在 java 中我们可以调用它的等效方法getSupportFragmentManager()。
我想知道 supportFragmentManager 变量在哪里定义,因为我看不到任何类似具有该名称的变量声明,但是单击该变量将我带到 fragmentActivity.java 类中的以下方法。
/**
* Return the FragmentManager for interacting with fragments associated
* with this activity.
*/
public FragmentManager getSupportFragmentManager() {
return mFragments.getSupportFragmentManager();
}
如何在 Kotlin 中将这个方法作为变量访问,而在 java 中我们必须像常规方法一样访问?任何帮助将不胜感激。
【问题讨论】:
-
Kotlin 只有属性,它会自动将 java getter 和 setter 转换为属性。
-
Kotlin 用合成糖替换了 getter 和 setter 调用,k0ma.co.za/blog/2018/11/04/JavaToKotlin-pt3 普通变量调用 getter,而分配变量(带 =)调用各自的 setter。
-
像往常一样,另一个很好的描述@AnimeshSahu。
标签: android kotlin android-fragment-manager