**How can I solved it**
//如何从Kotlin片段解析此错误 *
open class First : Fragment() {
}
// '显示在图像中的Fragment()未被访问' https://i.stack.imgur.com/Rcgl5.png
**How can I solved it**
//如何从Kotlin片段解析此错误 *
open class First : Fragment() {
}
// '显示在图像中的Fragment()未被访问' https://i.stack.imgur.com/Rcgl5.png
4条答案
按热度按时间yruzcnhs1#
Fragment是Android中的特殊类,它们需要主构造函数(该构造函数位于类名之后)。此构造函数应该为空(如果您声明了任何字段,则会看到警告,提示您不应创建带参数的Fragment)。
因此,编译代码所需的就是在片段名称后添加括号:
此外,你应该避免声明任何带参数的构造函数。你应该通过
Companion.newInstance(someArgs: List<Arg>) : YourFragment
.(其中Companion是Fragment的伴随对象)来创建你的fragment。您可以在此处找到应如何初始化片段:https://stackoverflow.com/a/9245510/7508302
hvvq6cgz2#
尝试添加如下构造函数:
当你使用下面的构造函数来传递
fragmentManager
时,当你扩展其他类时,应该有一个默认的构造函数。pkmbmrz73#
请尝试以下代码:
现在您有两个构造函数:
1.没有参数()
1.使用整数参数(supportFragmentManager)
2lpgd9684#
下面是完整的例子,希望能有所帮助。父类:
子类别: