2017-06-12 129 views
3

所以我做了一個AlertDialog,並且由於某種原因使用默認的Android棒棒糖+主題,我的AlertDialog上出現了這個令人討厭的頂部填充,我無法弄清楚如何編輯/刪除它。從AlertDialog中刪除頂部填充?

下面是我用它來產生AlertDialog

AlertDialog.Builder builder; 
      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
       builder = new AlertDialog.Builder(this, android.R.style.Theme_Material_Dialog_Alert); 
      } else { 
       builder = new AlertDialog.Builder(this); 
      } 
      builder.setTitle("Found corrupted files") 
        .setMessage("We've found " + count + " images that are either missing or " + 
          "corrupt. Should we remove these entries from the list?") 
        .setPositiveButton("Yeah", new DialogInterface.OnClickListener() { 
         @Override 
         public void onClick(DialogInterface d, int i) { 
          MainActivity.this.removeCorruptedImages(); 
          d.cancel(); 
         } 
        }) 
        .setNegativeButton("No", new DialogInterface.OnClickListener() { 
         @Override 
         public void onClick(DialogInterface d, int i) { 
          d.cancel(); 
         } 
        }) 
        .setIcon(R.drawable.ic_warning_white_24dp); 

      AlertDialog al = builder.create(); 
      al.show(); 

的代碼,它會產生這樣的: enter image description here

我想擺脫標題上面填充/空白的。

+0

是相同的,如果你不指定前剛剛嘗試這條線主題,併爲所有版本使用相同的Builder(上下文)構造函數? – lelloman

+0

不是,而是它帶有一個帶有黑色文本的完全白色背景(這對於應用程序主題看起來很可怕)。儘管如此,我仍然不知道該怎麼去實際製作我自己的對話資源。 (事實證明你只能在API 21或更高版本中設置你自己的對話框視圖,儘管這個應用程序的目標是API 16)。我很好,它看起來不好棒棒糖,它只是後棒棒糖我想擺脫那種巨大的填充 – 343N

回答

4

顯示您的AlertDialog

AlertDialog al = builder.create(); al.requestWindowFeature(Window.FEATURE_NO_TITLE); al.show();

+0

這工作,謝謝。只是好奇,它實際上在這裏消除了什麼?我想不是alertdialog的標題,因爲它仍然存在?這是什麼窗口功能 – 343N

2

你有沒有嘗試設置這樣的觀點間距:

a1.setView(View view, int viewSpacingLeft, int viewSpacingTop, int viewSpacingRight, int viewSpacingBottom)

+0

我會在這種情況下設置視圖?在al.getListView()中使用它;對於視圖參數,這似乎什麼也不做,無論我用於所有其他參數的值是什麼,或者它是在創建alertdialog之前還是之後完成 – 343N

+0

@ 343N在對話框的內容區域中顯示的視圖,你可以用'0'空間作爲其他參數,我想在調用'show'方法之前。 – Ibrahim

+0

但我沒有爲他們顯示(自定義)視圖,我使用的是默認的AlertDialog視圖,並且對我來說,檢索和使用該視圖(如果可能的話)要容易得多,而不是讓我自己嘗試 – 343N