代码之家  ›  专栏  ›  技术社区  ›  user3176486

如何更改底页对话框片段的默认高度?

  •  12
  • user3176486  · 技术社区  · 7 年前

    2 回复  |  直到 7 年前
        1
  •  15
  •   Jeff B    7 年前

    尝试以下代码。

    super.setupDialog(dialog, style);
    
    View contentView = View.inflate(getContext(), R.layout.activity_device_nfclocation, null);
    
    DisplayMetrics displayMetrics = getActivity().getResources().getDisplayMetrics();
    
    int width = displayMetrics.widthPixels;
    int height = displayMetrics.heightPixels;
    
    int maxHeight = (int) (height*0.88);
    
    BottomSheetBehavior mBehavior = BottomSheetBehavior.from((View) contentView.getParent());
    mBehavior.setPeekHeight(maxHeight);
    dialog.show();
    
        2
  •  -2
  •   Noah Mohamed    4 年前

    <style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
       
        
        <item name="bottomSheetDialogTheme">@style/CustomBottomSheet</item>
        
    </style>
    
    
    <style name="CustomBottomSheet" 
        parent="Theme.MaterialComponents.Light.BottomSheetDialog">
             <item name="bottomSheetStyle">@style/AppModalStyle</item>
    </style>
    
    <style name="AppModalStyle" parent="Widget.Design.BottomSheet.Modal">
    
        <item name="behavior_peekHeight">600dp</item>
    </style>