SettingFragment settingFragment = new SettingFragment(); getFragmentManager().beginTransaction() .add(R.id.settings_content, settingFragment) .commit();这段代码的作用是什么
时间: 2024-04-06 11:32:59 浏览: 8
这段代码的作用是在一个 Activity 中添加一个名为 `SettingFragment` 的 Fragment 到布局文件中 `R.id.settings_content` 所指定的容器中,并将其显示出来。具体而言,这段代码首先创建了一个 `SettingFragment` 的实例,然后通过 `getFragmentManager()` 获取到 Fragment 管理器,接着通过 `beginTransaction()` 开启一个事务来对 Fragment 进行操作。在这个事务中,通过 `add()` 方法将 `SettingFragment` 添加到 `R.id.settings_content` 容器中,最后通过 `commit()` 方法提交事务并使其生效,从而显示出 `SettingFragment`。
相关问题
beginTransaction = getFragmentManager().beginTransaction();不支持了咋办
如果你使用的是 AndroidX 库,可以改用 `getChildFragmentManager()` 来获取 FragmentManager 对象,然后调用 `beginTransaction()` 方法开启一个事务。例如:
```
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
```
如果你使用的是旧版的 support 库,可以尝试调用 `getSupportFragmentManager()` 方法获取 FragmentManager 对象,然后开启事务。例如:
```
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
```
不过建议你将支持库升级到最新的 AndroidX 版本,以获得更好的支持和体验。
NotesFragment hintfrag = (NotesFragment) getFragmentManager().findFragmentByTag(Def.TAG_NOTES); //注意事項画面の重複表示チェック if (hintfrag == null && !isFinishing()) { hintfrag = NotesFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.activity_container, hintfrag, Def.TAG_NOTES); ft.addToBackStack(null); ft.commit(); }以代码格式
|| !hintfrag.isVisible()) {
//注意事項画面が表示されていない場合、新しく作成して表示する
hintfrag = new NotesFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, hintfrag, Def.TAG_NOTES);
transaction.addToBackStack(null);
transaction.commit();
} else {
//注意事項画面が表示されている場合、何もしない
}