Android 替换来自另一个活动的片段。java.lang.IllegalArgumentException:找不到id的视图

Android 替换来自另一个活动的片段。java.lang.IllegalArgumentException:找不到id的视图,android,android-fragments,Android,Android Fragments,我想导航到活动中的片段。 导航抽屉中使用了两个片段FragmentA和FragmentB。 请查找以下代码: FragmentA.java public class FragmentA extends Fragment{ Button btnContinue; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

我想导航到活动中的片段。 导航抽屉中使用了两个片段FragmentA和FragmentB。 请查找以下代码:

FragmentA.java

public class FragmentA extends Fragment{

Button btnContinue;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    View rootView = inflater.inflate(R.layout.fragA, container, false);
    btnRegister=(Button)rootView.findViewById(R.id.btn_register);
    btnRegister.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub

        Intent i =new Intent(getActivity(),Register.class);
        startActivity(i);

       }
     });

    return rootView;
  }
}
java是另一个活动,我在其中单击SaveDetails按钮

btnSave.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub

        new Save_register_detail_task(Register.this,newfirstname, newlastname, newemail, newpassword).execute();

       }
     });
保存\u register\u detail\u task.java(异步任务)。 在其onPostExecute中,我有以下代码: R.id.frame\u容器在导航抽屉的布局中定义。

Fragment fragment = new FragmentB();
            fragment.setArguments(bundle);  
            //activity.finish();
            FragmentManager fragmentManager = ((FragmentActivity)activity).getSupportFragmentManager();

            FragmentTransaction fragmentTransaction = fragmentManager
                    .beginTransaction();
            fragmentTransaction.replace(R.id.frame_container,
                    fragment, "fragb")
                    .addToBackStack("register")
                    .commit();
LogCat-

09-08 13:24:21.381: E/FragmentManager(32202): No view found for id 0x7f050143     (com.demo.projectdemo:id/frame_container) for fragment FragmentB{429831a8 #0 id=0x7f050143 fragb}
09-08 13:24:21.381: E/FragmentManager(32202): Activity state:
09-08 13:24:21.431: E/AndroidRuntime(32202): FATAL EXCEPTION: main
09-08 13:24:21.431: E/AndroidRuntime(32202): java.lang.IllegalArgumentException: No view   found for id 0x7f050143 (com.demo.projectdemo:id/frame_container) for fragment  FragmentB{429831a8 #0 id=0x7f050143 fragb}
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:930)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1115)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1478)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:446)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.os.Handler.handleCallback(Handler.java:615)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.os.Handler.dispatchMessage(Handler.java:92)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.os.Looper.loop(Looper.java:137)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at android.app.ActivityThread.main(ActivityThread.java:4960)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at java.lang.reflect.Method.invokeNative(Native Method)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at java.lang.reflect.Method.invoke(Method.java:511)
09-08 13:24:21.431: E/AndroidRuntime(32202):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)

我应该用什么来代替R.id.frame\u容器??或者是否有其他方法来声明片段管理器???

您的下一个视图是否在
onCreate()中设置了
setContentView(R.layout.yourlayt)
以代替R.id.frame\u容器,您可以使用FragmentB视图层次结构中的任何VievGroup id FragmentB has view rootview=inflater.inflate(R.layout.shipping,container,false);@pskink无法解决我的问题。使用FragmentB中的任何视图组id都会引发相同的错误。@AndroidGeek您如何从其他活动访问其他人的活动?这个设计是错误的