android Dialog Gravity

时间:2014-04-23 14:33:42

标签: android android-dialog

我试图为我的应用制作指南。

我创建一个在500毫秒后出现的对话框,并显示具有图像视图的布局。

除了重力之外,一切都很好。

我需要dialog.getWindow()。setGravity(Gravity.BOTTOM);但在应用程序中,不应用此代码。


   void temp_help()
  {
        new Handler().postDelayed(new Thread()
        {
           @Override
           public void run(){
                final Dialog dialog = new Dialog(personal_view_MainActivity.this,android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
                dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
                dialog.setCancelable(true);
                dialog.setContentView(R.layout.view_temp_help);
                dialog.setTitle("  راهنما  "); 

                dialog.getWindow().setGravity(Gravity.BOTTOM);



                dialog.show();

                ImageView imageView=(ImageView)dialog.findViewById(R.id.imghelp_view);
                imageView.setOnClickListener(new OnClickListener()
                {
                    @Override
                    public void onClick(View v) 
                    {
                        dialog.setContentView(R.layout.view_temp_help2);
                    }
                });
           }
      }, 500);
        preferences.set_url("main_temp_help", "visited");
  }

2 个答案:

答案 0 :(得分:1)

FullScreen对话框:

dialog.getWindow().setFlags(LayoutParams.FLAG_FULLSCREEN, LayoutParams.FLAG_FULLSCREEN);

底部对话:

Dialog dlg = <code to create custom dialog>;

Window window = dlg.getWindow();
WindowManager.LayoutParams wlp = window.getAttributes();

wlp.gravity = Gravity.BOTTOM;
wlp.flags &= ~WindowManager.LayoutParams.FLAG_DIM_BEHIND;
window.setAttributes(wlp);

答案 1 :(得分:0)

这是我的方法:

我必须在多尺寸和对话框中运行我的应用程序。应该全屏显示,我的图片不能指定大小 - 因此,我使用FrameLayout中的match_parent mode使我的图像(对话框)全屏显示。

以下代码:


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<FrameLayout
    android:id="@+id/FrameLayout3"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:background="@drawable/my-image-in-any-size"
    android:alpha=".87">
</FrameLayout>