来自另一个片段的 Snackbar 回调
Snackbar callback from another fragment
我有一个 片段 (A) 具有回收站视图。当我按下某个项目时,会显示 DialogFragment(包含该项目的详细信息)。当我按下删除按钮时,该项目被删除并显示片段 A(有更改)。我的问题是 如何通知该项目已被删除? 我想显示带有 撤消选项[=19= 的 Snackbar ].我在 Google..
上没有找到任何东西
谢谢
在DialogFragment中定义一个接口:
public interface OnDeletedItem {
void onDeletedItem(Item deletedItem);
}
使您的 activity 实现接口,
public class MainActivity
extends AppCompatActivity
implements DialogFragment.OnDeletedItem
@Override
public void onDeletedItem(Item deletedItem) {
// get the Fragment A from fragment manager and notify it via public method to show a Snackbar with the Undo option as desired
FragmentA fragmentA = (FragmentA) getFragmentManager().findFragmentByTag("FragmentA");
fragmentA.showSnackbarForDeletedItem(deletedItem); // implement showSnackbarForDeletedItem or similar method in FragmentA
getSupportFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
}
然后,当您按下 DialogFragment 中的删除按钮时:
try {
((OnDeletedItem)getActivity()).onDeletedItem(deletedItem);
} catch (ClassCastException cce) {}
我有一个 片段 (A) 具有回收站视图。当我按下某个项目时,会显示 DialogFragment(包含该项目的详细信息)。当我按下删除按钮时,该项目被删除并显示片段 A(有更改)。我的问题是 如何通知该项目已被删除? 我想显示带有 撤消选项[=19= 的 Snackbar ].我在 Google..
上没有找到任何东西谢谢
在DialogFragment中定义一个接口:
public interface OnDeletedItem {
void onDeletedItem(Item deletedItem);
}
使您的 activity 实现接口,
public class MainActivity
extends AppCompatActivity
implements DialogFragment.OnDeletedItem
@Override
public void onDeletedItem(Item deletedItem) {
// get the Fragment A from fragment manager and notify it via public method to show a Snackbar with the Undo option as desired
FragmentA fragmentA = (FragmentA) getFragmentManager().findFragmentByTag("FragmentA");
fragmentA.showSnackbarForDeletedItem(deletedItem); // implement showSnackbarForDeletedItem or similar method in FragmentA
getSupportFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
}
然后,当您按下 DialogFragment 中的删除按钮时:
try {
((OnDeletedItem)getActivity()).onDeletedItem(deletedItem);
} catch (ClassCastException cce) {}