我有这段代码来改变片段:
FragmentTransaction fragmentTransaction = getSupportFragmentManager()
.beginTransaction()
.replace(R.id.frame_content, fragment);
if (isBackable) fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
Android工作室警告:
此事务应使用commit()调用
完成我不知道解决此警告的正确方法。
答案 0 :(得分:7)
这是误报。
Android Lint只看到你在没有提交的情况下将一些片段事务调用链接在一起,但未能在后面的行中看到提交。
你可以
忽略警告,
使用@SuppressLint("CommitTransaction")
或
删除方法链接,即替换
FragmentTransaction fragmentTransaction = getSupportFragmentManager()
.beginTransaction()
.replace(R.id.frame_content, fragment);
与
FragmentTransaction fragmentTransaction = getSupportFragmentManager()
.beginTransaction();
fragmentTransaction.replace(R.id.frame_content, fragment);
答案 1 :(得分:0)
我想如果你试试这个警告就会消失
FragmentTransaction fragmentTransaction = getSupportFragmentManager()
.beginTransaction()
.replace(R.id.frame_content, fragment);
if (isBackable) {
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
或
FragmentTransaction fragmentTransaction = getSupportFragmentManager()
.beginTransaction()
.replace(R.id.frame_content, fragment);
if (isBackable) fragmentTransaction.addToBackStack(null).commit();
或
祝你好运!你可以取消警告