2014-11-03 114 views
7

我在我的應用程序中創建了一個AlertDialog。在Android L AlertDialog按鈕適合對話框之前,但在Android L按鈕標籤中自動轉換爲標題大小寫和不適合對話框的按鈕。 請看截圖: 的Android L: Android L AlertDialog screenshotAndroid中的警報對話框按鈕問題L

Android的奇巧: Android 4.4 AlertDialog screenshot

是否有人看到這個問題。任何可以幫助我解決這個問題,雖然這是最新的Android版本。

代碼:(我沒有使用XML代碼來創建對話框,在這裏是Java代碼:)

AlertDialog.Builder alert = new AlertDialog.Builder(this); 
     alert.setTitle(R.string.feedback_label); 
     alert.setMessage(msgStrId); 
     alert.setNegativeButton(R.string.close_label, new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
       // TODO Auto-generated method stub 
      } 
     }); 
     alert.setPositiveButton(R.string.rate_app, new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
       // TODO Auto-generated method stub 
      } 
     }); 
     alert.setNeutralButton(R.string.feedback_label,new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) 
      { 
       // TODO Auto-generated method stub 
      } 
     }); 
     alert.setOnCancelListener(new DialogInterface.OnCancelListener() 
     { 
      @Override 
      public void onCancel(DialogInterface dialog) 
      { 
       // TODO Auto-generated method stub 
      } 
     }); 
     AlertDialog alertDialog = alert.create(); 
     alertDialog.show(); 
+0

發佈您的自定義警報對話框xml .. – 2014-11-03 06:37:20

+0

@MSGadag請參閱代碼。 – DevK 2014-11-03 06:40:59

+0

你有什麼解決方案嗎?謝謝 – 2017-10-26 07:01:50

回答

-3

使用<item name="android:textAllCaps">false</item>在你的應用主題的定義。然後,應用程序中的所有對話框都不會大寫。

+1

問題不在於對話框不是大寫字母,而是對話框中的按鈕不適合。 – 2015-01-26 17:19:36

+0

這是不是AlertDialog相關的答案..... – 2017-08-12 18:50:45

5

我知道,我爲時已晚。但我在這裏分享我的建議。也許它會有幫助。

AlertDialog alertDialog = alert.create(); 
    alertDialog .show(); 
    alertDialog.getButton(DialogInterface.BUTTON_NEGATIVE).setAllCaps(false); 
    alertDialog.getButton(DialogInterface.BUTTON_POSITIVE).setAllCaps(false); 
    alertDialog.getButton(DialogInterface.BUTTON_NEUTRAL).setAllCaps(false); 
alertDialog.show(); 
+0

一個很好的答案可以寫幾年後問一個問題。 – 2016-05-19 06:35:06

+0

對不起,先生,我不明白,你會指導? – Kush 2016-05-23 13:22:27

+0

我的意思是:答案不一定「太遲」,只是因爲問題很老。 – 2016-05-23 14:08:31

-1

如果你會嘗試找到解決方案,那麼你可能會得到,但也爲小屏幕,你會再次卡住,你也需要找到它的東西。

所以更好的是劃分你的字符串,以便它可以解決你的問題,任何屏幕。

對於下面的代碼如下。

轉到strings.xml文件。並改變你的標題如下。

<string name="rate_app">Rate This \n App</string> 
<string name="feedback_label">Report \n Issues</string> 

如果「\ n」不起作用,則用戶
標記。希望這會幫助你。