从Android Studio中的Activity parent访问Fragment元素

时间:2016-04-12 21:20:08

标签: android android-fragments

我需要在Android应用程序中实现一个包含4个部分的大型表单,因此我使用ViewPager创建了包含4个片段的01 Activity。每个片段都有一些EditText字段。在第4个片段,我有按钮来完成表单,所以我想点击它并获取所有EditText字段。

我认为最好的解决方案是在MainActivity.java上获取所有这些EditText字段,但是当我尝试从任何片段访问这些元素时,我只得到这个错误:尝试调用虚方法'android.text。在空对象引用

上可编辑的android.widget.EditText.getText()'

任何想法如何访问这些元素或任何更好的解决方案?

2 个答案:

答案 0 :(得分:1)

在活动中拥有共享POJO,并在每次下载时从Fragment类更新它。

请在此处阅读活动应如何与片段进行通信 http://developer.android.com/training/basics/fragments/communicating.html

正如文档中所建议的那样,您可以为活动实现的每个片段设置一个接口,最后一个片段使用布尔值通知完成。

答案 1 :(得分:0)

创建调查应用程序时,我曾经遇到过这种情况。

这是我采取的方法:

  • 根据需要创建片段。
  • 正如预期的那样,将第一个片段添加到您的活动中。
  • 这里的重要部分 - 当用户点击NEXT或Swipes到下一页时,将答案添加到地图(每个问题将映射到答案)
  • 现在重复此过程,直到您到达最终片段并简单地从地图中读出值(问题和答案)。

我发现这更容易实现,并给出了预期的结果!

祝你好运,编码愉快!