<activity androID:name=".LoginActivity" androID:theme="@style/theme.AppCompat.light.Dialog" androID:label="Login" />
我知道在这篇文章中Google还没有在DIALOGS的AppCompat库中添加Material themes,所以我认为它会回归到Holo.相反,这就是我得到的:
请记住,我没有使用AppCompat工具栏.在Activity中,我甚至没有引用Actionbar.你在上面看到的是默认行为,但我无法弄清楚它的来源.这可能是个错误吗?
(另外,EditText字段没有使用应用的主要颜色着色.)
解决方法 注意:请参阅我的最终编辑,以获得最佳解决方案对于它的价值,我认为这是一个错误.但是,我发现的有效解决方法是使用@ 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:你也可以简单地删除灰色背景 – 这可能是最好的解决方案,因为它不需要Base.字首:
<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>总结
以上是内存溢出为你收集整理的android – 带有误色标题栏的AppCompat对话主题 – Bug?全部内容,希望文章能够帮你解决android – 带有误色标题栏的AppCompat对话主题 – Bug?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)