IllegalArgument异常找不到视图

时间:2018-12-07 16:02:42

标签: java android android-fragments exception

这是我收到的错误:

java.lang.IllegalArgumentException: No view found for id 0x7f09003d (com.company.app:id/container) for fragment friendFragment{118ad082 #0 id=0x7f09003d}

我进行了一些调试,发现错误来自以下行:

transaction.replace(R.id.container, friendFragment).commit();

在布局xml文件中,我创建了一个名为R.id.container的片段:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" />

OnCreate代码:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    //TODO Add Fragment to activity using getSupportFragmentManager() method

    FriendFragment friendFragment= new FriendFragment();
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

    transaction.replace(R.id.container, friendFragment).commit();                  //This line

使用我的Fragment类:

   public static class FriendFragment extends PreferenceFragmentCompat {
    @Override
    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
        setPreferencesFromResource(R.xml.pref_frag_main, "friend_fragment");

    }

}

我希望获得有关如何解决此问题的帮助,因为我不知道它为什么会发生?

任何帮助,答案或建议都很棒!

更新: 感谢@MikeM,我解决了这个问题。请参阅以下注释中的解决方案!

0 个答案:

没有答案