Android 单击底部工作表上的项目时,底部工作表不会折叠
我使用fragment和扩展BottomSHeetDialogFragment类创建了一个bottomsheet,现在的问题是,当我单击bottomsheet上的任何项目时,它不会折叠bottomsheet,我该怎么做 这是我的班级Android 单击底部工作表上的项目时,底部工作表不会折叠,android,onclick,fragment,bottom-sheet,Android,Onclick,Fragment,Bottom Sheet,我使用fragment和扩展BottomSHeetDialogFragment类创建了一个bottomsheet,现在的问题是,当我单击bottomsheet上的任何项目时,它不会折叠bottomsheet,我该怎么做 这是我的班级 public class BottomSheetFragment extends BottomSheetDialogFragment { private NavigationView navigationView; private BottomSh
public class BottomSheetFragment extends BottomSheetDialogFragment {
private NavigationView navigationView;
private BottomSheetBehavior bottomSheetBehavior;
@Override
public View onCreateView(LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) {
Inflater inflater1 = new Inflater();
final View view = inflater.inflate(R.layout.fragment_bottom_sheet, container, false);
navigationView = view.findViewById(R.id.navigation_view_id);
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.all_list_item_id:
// Do something and collapse sheet
return true;
case R.id.add_new_list_item_id:
// Do something and collapse sheet
return true;
case R.id.bottom_sheet_item3_id:
// Do something and collapse sheet
return true;
default:
return false;
}
}
});
return view;
}
}
解决方案很简单,只需从onclick方法中调用disclose()方法 参考: 代码应该如下所示
public class BottomSheetFragment extends BottomSheetDialogFragment {
private NavigationView navigationView;
private BottomSheetBehavior bottomSheetBehavior;
@Override
public View onCreateView(LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) {
Inflater inflater1 = new Inflater();
final View view = inflater.inflate(R.layout.fragment_bottom_sheet, container, false);
navigationView = view.findViewById(R.id.navigation_view_id);
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.all_list_item_id:
dismiss();
return true;
case R.id.add_new_list_item_id:
dismiss();
return true;
case R.id.bottom_sheet_item3_id:
dismiss();
return true;
default:
return false;
}
}
});
return view;
}
}