私はサポートライブラリからBottomSheetDialogFragmentを使用していますが、関数setupDialog()
はライブラリグループ内でのみ使用するよう警告しています。しかし、この機能は、私は私のダイアログを初期化する場所である:私はスーパーメソッドを使用していますので、BottomSheetDialogFragment setupライブラリグループに限定されたダイアログ
@Override
public void setupDialog(final Dialog dialog, int style) {
super.setupDialog(dialog, style);
FragmentArgs.inject(this);
dialog.setOnShowListener(dialogINterface -> {
if(dialog.getWindow() != null) {
dialog.getWindow().setLayout(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.MATCH_PARENT);
}
});
BottomSheetStatisticsExportBinding binding = DataBindingUtil.inflate(
LayoutInflater.from(getContext()),
R.layout.bottom_sheet_statistics_export,
null,
false
);
View contentView = binding.getRoot();
dialog.setContentView(contentView);
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) ((View) contentView.getParent()).getLayoutParams();
CoordinatorLayout.Behavior behavior = params.getBehavior();
if(behavior != null && behavior instanceof BottomSheetBehavior)
((BottomSheetBehavior) behavior).setBottomSheetCallback(bottomSheetBehaviorCallback);
for (Export export : exports)
binding.flexbox.addView(new ExportItemView(getContext(), export));
}
警告があります。しかし、私は代わりに何をすべきですか?コードを別の関数(onCreateDialog()
、onResume()
...?)内に移動すると、スーパーへの呼び出しを取り除かなければなりませんか?
誰でも知っていますか?