注:見我最後編輯的可能是最好的解決方案
對於它的價值,我認爲這是一個錯誤。但是,我發現有效的解決方法是使用@style/Base.Theme.AppCompat.Light.Dialog.FixedSize
。根據你的截圖,我認爲這也適用於你。但是,我還沒有測試調色板着色。
從我的測試中可以看出,這擴展了灰色邊框,同時仍允許使用AppCompat和v21。
編輯:一個副作用是現在看來,所有的對話活動是相同的大小,這可能不適合你。另外,我還沒有想出如何去掉標題 - requestWindowFeature和supportRequestWindowFeature與Window.FEATURE_NO_TITLE似乎導致
java.lang.RuntimeException: Unable to start activity ComponentInfo{myclass}:
android.util.AndroidRuntimeException: requestFeature() must be called before adding content
即使我之前和之後super.onCreate和的setContentView
之前肯定嘗試過
編輯#2:通過XML主題刪除標題,並且由於您沒有標題,所以您不必擔心會出現奇怪的灰色框,這意味着您可以刪除FixedSize設置,並且對話框將自動包裝它的內容。早期版本。
<style name="MyActivityDialogTheme" parent="Base.Theme.AppCompat.Light.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
</style>
編輯#3:你也可以簡單地刪除灰色背景 - 這可能是最好的解決方案,因爲它不需要基礎。前綴:
<style name="MyTitledActivityDialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="android:windowNoTitle">false</item>
<item name="android:windowTitleBackgroundStyle">@android:color/transparent</item>
<item name="windowActionBar">false</item>
</style>
「我知道,因爲這個職位的谷歌還沒有被添加在程序兼容性庫材料主題」 =>您已經錯過了公告! [AppCompat v21 - Pre-Lollipop設備的材料設計!](http://android-developers.blogspot.in/2014/10/appcompat-v21-material-design-for-pre.html) – 2014-10-27 19:27:04
@PareshMayani哦,對不起,我輸錯了,我毫無疑問多次閱讀該頁面!我聽說,他們還沒有在'Dialog'中加入M.D.主題。 (現在我想到了,這是否甚至包括對話框主題,它不同於Dialog對象?) – KickingLettuce 2014-10-27 19:30:15
'Theme.AppCompat.Light.Dialog'確實擴展了'android:Theme.Material.Light.Dialog' 。你使用什麼代碼來創建對話活動? – ianhanniballake 2014-10-27 19:59:48