मेरे पास एक GridView है और मैं एक संवाद का एक निहितार्थ बनाना चाहता हूं, जिस पर मैंने जो चित्र चुना है वह पूर्ण स्क्रीन में प्रदर्शित होना चाहिए।
तो मैं पूर्ण स्क्रीन मोड में संवाद कैसे दिखा सकता हूं? धन्यवाद!
मेरे पास एक GridView है और मैं एक संवाद का एक निहितार्थ बनाना चाहता हूं, जिस पर मैंने जो चित्र चुना है वह पूर्ण स्क्रीन में प्रदर्शित होना चाहिए।
तो मैं पूर्ण स्क्रीन मोड में संवाद कैसे दिखा सकता हूं? धन्यवाद!
जवाबों:
प्रयत्न
Dialog dialog=new Dialog(this,android.R.style.Theme.Black.NoTitleBar.Fullscreen)
Call requires API level 11
DialogFragment
हूं) देखता हूं कि स्टेटस बार का रंग डायलॉग द्वारा मारा गया है, तो पूरी स्क्रीन डायलॉग का बैकग्राउंड कलर है। किसी को भी एक समाधान का पता है? मैंने बिना किसी प्रभाव के, डायलॉग की विंडो का स्टेटबर्कर सेट करने की कोशिश की। पुनश्च: नेविगेशन बार का रंग भी मारा जाता है।
इस लिंक के आधार पर , सही उत्तर (जो मैंने खुद का परीक्षण किया है) है:
इस कोड को कंस्ट्रक्टर या 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);
...
संपादित करें: उपरोक्त सभी के लिए एक विकल्प 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
छवि फ़ाइलों के लिए केवल डिफ़ॉल्ट का उपयोग क्यों न करें?