Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从片段替换宿主活动中的片段_Android_Android Fragments_Callback - Fatal编程技术网

Android 从片段替换宿主活动中的片段

Android 从片段替换宿主活动中的片段,android,android-fragments,callback,Android,Android Fragments,Callback,我的容器活动具有framelayout,用于在其中存储片段。 例如,我有一个带有初始framgent的活动用于登录页面。有两个按钮:登录和注册。 用户可以单击“注册”,在这种情况下,我需要用另一个带有注册字段的片段更改当前片段。 所以我只想让主机活动实现回调接口,然后将活动传递给片段,当用户单击register时,调用回调方法,主机活动替换片段。 因此,问题是,是否有其他更好的方法来做到这一点,也许更正确。 请留下您的建议以及如何处理此问题。谢谢您可以按如下方式替换片段 Fragment

我的容器活动具有framelayout,用于在其中存储片段。
例如,我有一个带有初始framgent的活动用于登录页面。有两个按钮:登录和注册。
用户可以单击“注册”,在这种情况下,我需要用另一个带有注册字段的片段更改当前片段。
所以我只想让主机活动实现回调接口,然后将活动传递给片段,当用户单击register时,调用回调方法,主机活动替换片段。
因此,问题是,是否有其他更好的方法来做到这一点,也许更正确。

请留下您的建议以及如何处理此问题。谢谢您可以按如下方式替换片段

    FragmentTransaction transaction = getFragmentManager().beginTransaction();
    transaction.replace(<container id>, new RegisterFragment());
    transaction.commit();
FragmentTransaction=getFragmentManager().beginTransaction();
replace(,newregisterfragment());
commit();

//如果您使用的是支持库,请确保使用getSupportFragmentManager()

explain“with registration fields.”???是注册碎片吗?是的,它是另一个带有注册文件的碎片,注册碎片负责替换碎片是否比主动替换好?这是添加/替换碎片的便捷方式,如果它对您有帮助,也接受答案我认为这不是一个好主意,片段是关于模块化的,如果你把这样的责任交给一个片段,你将需要重构你的代码,如果你将来需要用其他的东西替换这个片段,那么在这种情况下回调会更好?我想是的,至少我是这样做的。