Это ошибка, которую я получаю:
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 я решил эту проблему.Смотрите решение ниже в комментариях!