Вот мое решение, чтобы получить диалог, который показывает только содержание.
Dialog dialog = new Dialog(this,R.style.ThemeDialogCustom);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
//you can move the dialog, so that is not centered
// dialog.getWindow().getAttributes().y = 50; //50 should be based on density
dialog.setContentView(yourLinearLayout);
dialog.setCancelable(true);
//dialog.setOnCancelListener(cancelListener);
dialog.show();
themes.xml // находится в проекте/Рез/значения
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="ThemeDialogCustom">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowBackground">@color/transparent_color</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:colorBackgroundCacheHint">@null</item>
</style>
</resources>
colors.xml // Там же находится
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="transparent_color">#00000000</color>
</resource>
если мы это сделаем, то dialog.setCanceledOnTouchOutside (true); не будет иметь никакого эффекта ... как с этим справиться? – amithgc
Это именно то, что я искал. Я борюсь с системой создания диалога и десятками плохо написанных уроков в течение нескольких часов, и ваша единственная строка кода была всем, в чем я нуждался. Спасибо! – kodi
, но он делает диалог в полноэкранном режиме. Чтобы предотвратить его отсутствие в полноэкранном режиме, я пишу приведенный выше код. – AndroidDev