У мене є GridView, і я хочу зробити імплементацію діалогового вікна, в якому зображення, яке я вибрав, має відображатися на весь екран.
тож як я можу зробити діалогові вікна в повноекранному режимі? Дякую!
У мене є GridView, і я хочу зробити імплементацію діалогового вікна, в якому зображення, яке я вибрав, має відображатися на весь екран.
тож як я можу зробити діалогові вікна в повноекранному режимі? Дякую!
Відповіді:
спробуйте
Dialog dialog=new Dialog(this,android.R.style.Theme.Black.NoTitleBar.Fullscreen)
Call requires API level 11
DialogFragment
), я бачу, що колір рядка стану вбивається діалоговим вікном, весь екран - це колір тла діалогу. Хтось знає про вирішення проблеми? Я намагався налаштувати statusBarColor у вікні діалогу, безрезультатно. PS: колір панелі навігації теж вбивається.
На основі цього посилання правильна відповідь (яку я перевірив):
помістіть цей код у конструктор або onCreate()
метод діалогового вікна:
getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT);
крім того, встановіть стиль діалогового вікна:
<style name="full_screen_dialog">
<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:windowSoftInputMode">stateUnspecified|adjustPan</item>
</style>
цього можна досягти за допомогою конструктора, наприклад:
public FullScreenDialog(Context context)
{
super(context, R.style.full_screen_dialog);
...
EDIT: альтернативою усьому вищезазначеному було б встановити стиль на android.R.style.Theme і все.
Найпростіший спосіб я знайшов
Dialog dialog=new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen);
dialog.setContentView(R.layout.frame_help);
dialog.show();
EDIT До тих пір, поки StackOverflow не дозволяє нам оновлювати свої відповіді, це відповідь, яка працює для Android 3 і нижче. Будь ласка, не зволікайте з цього приводу, тому що він зараз не працює для вас, оскільки він, безумовно, працює зі старими версіями Android.
Вам потрібно буде додати лише один рядок до вашого onCreateDialog()
методу:
@Override
protected Dialog onCreateDialog(int id) {
//all other dialog stuff (which dialog to display)
//this line is what you need:
dialog.getWindow().setFlags(LayoutParams.FLAG_FULLSCREEN, LayoutParams.FLAG_FULLSCREEN);
return dialog;
}
FLAG_FULLSCREEN cannot be resolved or is not a field
dialog = new Dialog(getActivity(),android.R.style.Theme_Translucent_NoTitleBar);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.loading_screen);
Window window = dialog.getWindow();
WindowManager.LayoutParams wlp = window.getAttributes();
wlp.gravity = Gravity.CENTER;
wlp.flags &= ~WindowManager.LayoutParams.FLAG_BLUR_BEHIND;
window.setAttributes(wlp);
dialog.getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
dialog.show();
спробуйте це.
Dialog
, чому б не просто використовуватиACTION_VIEW
Intent
файли зображень за замовчуванням ?