我有一个包含多个编辑文本和一个视图页导航的活动。在视图页导航中有一些文本编辑现在,我希望当用户填写Activity中的表单和片段中的表单时,所有信息都将通过按下一个按钮传输到服务器。问题是按钮在主Activity中,我没有权限编辑片段中的文本我该怎么办???
vnjpjtjt1#
由于Activity控制着Fragment,因此您可以在Fragment内部实现一个自定义方法,如fun getFormInput(): Map<String, String>或类似方法。当单击“send”按钮时,您将使用该方法接收来自Fragment的所有信息。或者,您可以使用observer pattern实现一个自定义侦听器,以便在Fragment中的表单字段每次发生更改时,在Activity中得到通知。
Activity
Fragment
fun getFormInput(): Map<String, String>
4dc9hkyq2#
您可以添加一个接口,该接口将返回上面提到的map对象。在接口中创建一个方法,该方法返回存储在任何最适合您的用例的数据结构中的所有dit文本中的数据。在您的片段中-向所有编辑文本添加一个监视器,并使用接口中的方法将edittext中存在的值发送到Activity。
2条答案
按热度按时间vnjpjtjt1#
由于
Activity
控制着Fragment
,因此您可以在Fragment
内部实现一个自定义方法,如fun getFormInput(): Map<String, String>
或类似方法。当单击“send”按钮时,您将使用该方法接收来自
Fragment
的所有信息。或者,您可以使用observer pattern实现一个自定义侦听器,以便在
Fragment
中的表单字段每次发生更改时,在Activity
中得到通知。4dc9hkyq2#
您可以添加一个接口,该接口将返回上面提到的map对象。
在接口中创建一个方法,该方法返回存储在任何最适合您的用例的数据结构中的所有dit文本中的数据。
在您的片段中-向所有编辑文本添加一个监视器,并使用接口中的方法将edittext中存在的值发送到Activity。