【问题标题】:How to change view in parent activity from Fragment with view binding [duplicate]如何使用视图绑定从片段更改父活动中的视图[重复]
【发布时间】:2021-08-14 18:27:25
【问题描述】:

视图绑定是访问视图的推荐方式,此问题已过时:How to access parent Activity View in Fragment

那么,使用视图绑定从片段编辑活动视图的正确方法是什么?

【问题讨论】:

  • 这取决于您需要它来做什么(例如引用、实例、创建实例等)。在任何大型框架中,您可以通过多种方式获取大部分资源,但通常每个方法返回它的不同版本,通常针对某个(一组)用例量身定制......换句话说,你需要它做什么? :)
  • ViewBinding 与两个实体(活动、片段等)之间的数据共享无关。如果您确实需要访问共享状态,Google 推荐的方法是使用共享 ViewModel。

标签: android kotlin android-viewbinding


【解决方案1】:

公开活动的绑定变量并像这样访问它

(requireActivity() as MainActivity).binding.viewToBeAccessed

【讨论】:

    【解决方案2】:

    您可以使用 getActivity() 从片段中获取对父活动的引用。 您还可以调用 requireActivity() ,然后调用 getActivity() 并在其为空时抛出异常,例如该片段未附加到任何活动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-26
      • 2020-11-21
      • 1970-01-01
      • 1970-01-01
      • 2020-04-09
      相关资源
      最近更新 更多