【问题标题】:Android ViewBinding handle fragment null after onDestroyonDestroy 之后的 Android ViewBinding 句柄片段 null
【发布时间】:2021-11-28 13:30:53
【问题描述】:

我正在实施ViewBinding,根据 Google 文档,我们应该这样做:

private var _binding: ResultProfileBinding? = null
// This property is only valid between onCreateView and
// onDestroyView.
private val binding get() = _binding!!

....

override fun onDestroyView() {
    super.onDestroyView()
    _binding = null
}

我们强制 binding 为非空,但我们最终可能会遇到这样的情况:

binding.itemView.post {
    // when post is called, fragment is still available but when the runnable run's fragment isn't available.
    binding.itemView.setText="......"
}

我们可以让 getter 返回 null,但在这种情况下,我们需要到处使用 binding?.

如何处理此问题以使binding.itemView.setText="......" 不会导致应用崩溃?

【问题讨论】:

    标签: android android-viewbinding


    【解决方案1】:

    我不会那样做。让某些东西只有在 onDestroy 之前才有效,这似乎是发生竞争条件的好方法。特别是如果您有异步处理。相反,我只使用 _binding 并让我的代码执行 _binding?.itemView.text=""

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-11
      • 2014-06-24
      • 1970-01-01
      • 1970-01-01
      • 2014-02-03
      • 1970-01-01
      相关资源
      最近更新 更多