私は多くの画像を表示するGridViewを持っており、任意の画像をクリックすると、フルスクリーンダイアログでfull imageが表示されます
その方法を教えてください
ありがとう。
試してみる
Dialog dialog=new Dialog(this,Android.R.style.Theme_Black_NoTitleBar_Fullscreen)
このリンク に基づいて、正しい答え(私は自分でテストしました)は次のとおりです:
このコードをコンストラクターまたはダイアログの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()
メソッドに1行だけ追加する必要があります。
@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;
}
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();
これを試して。