@Override protected void modifyAlertDialogBuilder(android.support.v7.app.AlertDialog.Builder builder) { super.modifyAlertDialogBuilder(builder); if (getLayoutResId() != 0) { builder.setView(getLayoutResId()); } }
@Override protected void modifyAlertDialogBuilder(AlertDialog.Builder builder) { super.modifyAlertDialogBuilder(builder); builder.setPositiveButton(null, null); }
/** * 这时dialog已经初始化完毕 */ @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); // getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE); }
@NonNull @Override public Dialog onCreateDialog(Bundle savedInstanceState) { if (!isBottomDialog()) { return super.onCreateDialog(savedInstanceState); } else { return new BottomSheetDialog(getContext(), getTheme()); } }
@Override public void setupDialog(Dialog dialog, int style) { super.setupDialog(dialog, style); if (isBottomDialog()) { dialog.setContentView(getLayoutResId()); } }
@Override public void onDestroyView() { super.onDestroyView(); mInputTextEt = null; }
@Override protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); }
@Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); Bundle arguments = getArguments(); byte[] mBitmapByteArr = null; if (arguments != null) { mBitmapByteArr = arguments.getByteArray(KEY_IMAGE_BITMAP); mInputText = arguments.getCharSequence(KEY_INPUT_TEXT); mInputHint = arguments.getCharSequence(KEY_INPUT_HINT); } if (mBitmapByteArr != null) { mBitmap = BitmapFactory.decodeByteArray(mBitmapByteArr, 0, mBitmapByteArr.length); } }
@Override protected void modifyAlertDialogBuilder(AlertDialog.Builder builder) { super.modifyAlertDialogBuilder(builder); Bundle arguments = getArguments(); String name = arguments.getString(KEY_NAME); int age = arguments.getInt(KEY_AGE); String str = "name: " + name + ", age: " + age; // 修改builder对象 builder.setMessage("修改后的message是:\n\n" + str); }
/** * title的布局,title的布局会显示在自定义布局的上方 */ @Override protected void modifyAlertDialogBuilder(AlertDialog.Builder builder) { super.modifyAlertDialogBuilder(builder); View titleView = LayoutInflater.from(getContext()).inflate(R.layout.custom_dialog_title_layout, null, false); builder.setCustomTitle(titleView); // 修改builder中的titleView }