Диалог не по центру
Мой код для создания диалога есть:
Код: Выделить всё
public class GenericAlert extends DialogFragment {
public static final int LOADING_ALERT = 0;
public static final int SENDING_ALERT = 1;
public static final int ERROR_ALERT = 2;
private int alertType;
private boolean showing = false;
@NonNull
@Override
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
int layoutToSet;
switch (alertType) {
case LOADING_ALERT: layoutToSet = R.layout.loading_alert_layout; break;
case SENDING_ALERT: layoutToSet = R.layout.sending_alert_layout; break;
case ERROR_ALERT: layoutToSet = R.layout.error_alert_layout; break;
default: layoutToSet = R.layout.error_alert_layout; break;
}
View loadingAlertLayout = getLayoutInflater().inflate(layoutToSet, null);
builder.setView(loadingAlertLayout);
if (alertType == SENDING_ALERT) {
builder.setCancelable(false);
}
AlertDialog alert = builder.create();
alert.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
return alert;
}
...
}
Вот мой XML-файл loading_alert_layout. xml:
Код: Выделить всё
android:layout_weight=".3"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:src="@drawable/loading_animation"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:adjustViewBounds="true"
android:padding="10dp"/>
Я перепробовал почти все это безуспешно приходит мне в голову, например, установка LayoutParams при раздувании представления, запрос FEATURE_NO_TITLE, изменение корневого представления с линейного макета на относительный макет, макет с ограничениями и т. д. , и, кажется, ничто не помогает мне удалить это пустое пространство, которое появляется только на телефоне Oppo, а не на моем телефоне Realme.
Примечание: при изменении корневого представления я заметил пробел меняется при использовании разных представлений, вот некоторые результаты, которые я получил с представлениями с заполнением всего 10 dp, красным фоном и значениями match_parent и wrap_content для Layout_width и Layout_height соответственно:
LinearLayoutCompat, ConstraintLayout, AppCompatTextView, AppCompatButton
Серьезно, я понятия не имею, почему это происходит, и у меня закончились идеи. Кроме того, это мой первый вопрос здесь, на StackOverflow, поэтому я могу указать на любые ошибки, которые я допустил в своем письме.
Подробнее здесь: https://stackoverflow.com/questions/786 ... ppo-phones