2017-12-01 49 views
0

일부 데이터를 표시하려면 BottomSheetDialogFragment을 사용하고 있습니다. 그러나 fragment을 시작하면 화면의 50 %가 표시됩니다. 그래서, 내 질문은 전체 화면으로 표시하는 방법입니다.BottomSheetDialogFragment를 전체 화면으로 덮는 방법?

BottomSheetDialogFragment 코드 :

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    View v = inflater.inflate(R.layout.bot_frag, container, false); 
    TextView tv = v.findViewById(R.id.textVi); 
    back=v.findViewById(R.id.back_of_bot); 
    back.setOnClickListener(
      new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        dismiss(); 
       } 
      } 
    ); 
    return v; 
} 
+0

그런 다음 ** 아래쪽 ** DialogFragment는 필요하지 않습니다. ** 평범한 ** DialogFragment는 당신이 추구하는 것입니다. –

답변

0

당신은 대화 조각을 사용할 수 있습니다, PLZ이를 참조하십시오

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    View v = inflater.inflate(R.layout.bot_frag, container, false); 
    TextView tv = v.findViewById(R.id.textVi); 
    back=v.findViewById(R.id.back_of_bot); 
    back.setOnClickListener(
      new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        FragmentManager fm = getFragmentManager(); 
        DialogFragments dialogFragment = new DialogFragments(this); 
        dialogFragment.show(fm, "Bottomsheet Fragment"); 
       } 
      } 
    ); 
    return v; 
} 
:

public class DialogFragments extends DialogFragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE); 
     View view = inflater.inflate(R.layout.dialog_dialogfragment_layout, null); 
     getDialog().setTitle("Title"); 
     return view; 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 
     DisplayMetrics metrics = new DisplayMetrics(); 
     getActivity().getWindowManager().getDefaultDisplay().getMetrics(metrics); 
     getDialog().getWindow().setGravity(Gravity.BOTTOM); 
     getDialog().getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, (int) (metrics.heightPixels * 0.30));// here i have fragment height 30% of window's height you can set it as per your requirement 
     getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); 
     getDialog().getWindow().getAttributes().windowAnimations = R.style.DialogAnimationUpDown; 

} 

을 당신은 이런 식으로 같은 오픈 Bottomsheet 대화 상자를 열고 자 할 때

0

이 스타일을 당신에게 적용해야합니다 BottomSheetDialogFragment

android.R.style.Theme_Material_Light_NoActionBar_Fullscreen