0

我想在屏幕底部显示 AlertDialog,但在 AlertDialog 的底部和屏幕底部之间有一个空格。
我的代码如下:

private void editor(Context context){
   AlertDialog.Builder builder = new AlertDialog.Builder(context);    
   View view = addLayout(R.layout.edit_layout); 
   final AlertDialog myDialog = builder.create();
   Window window = myDialog.getWindow();
   myDialog.setView(view);
   myDialog.show();
   window.setGravity(Gravity.BOTTOM);// set the AlertDialog in screen the bottom.
}

那么如何在没有空格的情况下在屏幕底部显示 AlertDialog 呢?

4

2 回答 2

1

使用此代码希望它会有所帮助。

       AlertDialog dialog = builder.create();
       dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
       WindowManager.LayoutParams wmlp = dialog.getWindow().getAttributes();

         wmlp.gravity = Gravity.Bottom | Gravity.LEFT;
        wmlp.x = 100;   //x position
        wmlp.y = 100;   //y position

         dialog.show();
于 2013-04-16T09:28:23.120 回答
0
private void editor(Context context, int theme, int customLayout) {
    Dialog builder = new Dialog(context, theme);//R.style.customDialog
    builder.setContentView(customLayout);
    builder.show()
}

在文件中

res/values/styles.xml

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

<style name="customDialog" parent="@android:style/Theme.Dialog">
    <item name="android:windowIsFloating">false</item>
</style>


</resources>

在您的布局中将主要布局重力设置为:

android:gravity="bottom|center_horizo​​ntal"


为了使这个 customDialog 样式的间距,将 ieandroid:padding设置为 10dp

附言。没有测试,但它应该可以工作,在任何问题上都可以告诉我

于 2013-04-16T09:53:38.910 回答