Я пробовал все решения здесь, и мне кажется, что ни одно из них не работает для меня. Следующий код отлично работал на Android Kitkat, но в Oreo 8.1 у него всегда есть этот уродливый черный блок под диалоговым фрагментом, независимо от того, какой стиль я пробую.

Код для вызова диалогового окна:
FragmentManager pfm = getFragmentManager();
NewPointMapPopup pointSaveDialog = new NewPointMapPopup();
Bundle args = new Bundle();
args.putParcelable("newPoint", tapLoc);
args.putInt("screenX",Math.round(canvasX));
args.putInt("screenY",Math.round(canvasY));
args.putInt("screenHeight",canvasHeight);
pointSaveDialog.setArguments(args);
pointSaveDialog.show(pfm, "");
Код onCreateView:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.new_point_map_popup, container, false);
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
и макет:
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:id = "@+id/popup_main_layout"
android:orientation = "vertical"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:background = "@drawable/map_popup_bg"
android:padding = "1dp">
<LinearLayout
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:orientation = "vertical">
<LinearLayout
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_gravity = "center_horizontal"
android:padding = "10dp"
android:orientation = "vertical">
<LinearLayout
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:orientation = "horizontal">
<LinearLayout
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_marginRight = "10dp"
android:gravity = "right"
android:orientation = "vertical">
<TextView
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "Latitude:"/>
<TextView
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "Longitude:"/>
<TextView
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "Distance:"/>
</LinearLayout>
<LinearLayout
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:orientation = "vertical">
<TextView
android:id = "@+id/new_point_lat"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "43.1231233"/>
<TextView
android:id = "@+id/new_point_lon"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "25.55656666"/>
<TextView
android:id = "@+id/new_point_distance"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "@color/foretrexBlue"
android:text = "250 m"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width = "match_parent"
android:layout_height = "48dp"
android:weightSum = "2"
android:orientation = "horizontal">
<Button
style = "@style/MFButton"
android:id = "@+id/new_point_close"
android:layout_width = "0dp"
android:layout_height = "wrap_content"
android:visibility = "visible"
android:layout_weight = "1"
android:text = "Close"/>
<Button
style = "@style/MFButton"
android:id = "@+id/new_point_save"
android:layout_width = "0dp"
android:layout_height = "wrap_content"
android:layout_weight = "1"
android:text = "Save"/>
</LinearLayout>
</LinearLayout>




Очевидно, это была ошибка Android Oreo 8.1. После обновления от 5.10.2018 проблема решена.