Android fragments Android kotlin片段中的findViewById
通常是这样Android fragments Android kotlin片段中的findViewById,android-fragments,Android Fragments,通常是这样 findViewById<TextView>(R.id.text_view).text = "foo" findviewbyd(R.id.text\u视图)。text=“foo” 但这在片段中不起作用 这似乎可行,但似乎相当麻烦 getView()?.findViewById<TextView>(R.id.text_view)?.text = "foo" getView()?.findViewById(R.id.text\u视图)?.text=“
findViewById<TextView>(R.id.text_view).text = "foo"
findviewbyd(R.id.text\u视图)。text=“foo”
但这在片段中不起作用
这似乎可行,但似乎相当麻烦
getView()?.findViewById<TextView>(R.id.text_view)?.text = "foo"
getView()?.findViewById(R.id.text\u视图)?.text=“foo”
是这样吗
在
片段中应该做什么(它在任何地方都有文档记录)?Kotlin中片段中绑定视图的示例
var view: View? = null
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? { // Inflate the layout for this fragment
view = inflater.inflate(R.layout.fragment_feedback_tab, container, false)
return view
}
在onCreateView()中初始化视图,如下所示:
class HomeFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
// Inflate the layout for this fragment
var view: View? = null
view = inflater.inflate(R.layout.fragment_home, container, false)
return view
}
因此,它只能在onCreateView
内部执行,而不能在片段的任何其他方法中执行。将view
作为全局变量,然后您可以将视图绑定到onCreateView
范围之外如果我执行lateinit private var view:view
则它会说“意外覆盖”;已经有了吗?或者这是另一个
view`?在运行onCreateView()之后,视图将被初始化