自定义样式中的Android对话框:删除蓝线并设置ActionBar颜色

时间:2015-03-30 05:38:03

标签: android dialog

我正在使用以下代码和视图创建自定义Dialog,如下所示: mCountryDialog = new Dialog(getActivity(),android.R.style.Theme_Holo); 但是,我想删除蓝色分隔符并更改"操作栏的背景颜色"

enter image description here

尝试的结果 参考stackoverflow,我在style.xml中创建了一个自定义对话框样式

`<style name="LoCountryDialog" parent="android:Theme.Holo"> 
<item name="android:windowFullscreen">true</item>
<item name="android:windowFrame">@null</item>
<item name="android:windowNoTitle">false</item>
<item name="android:windowIsFloating">false</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowBackground">@color/main_theme_red</item>

`

我会将背景颜色从黑色更改为红色,但是&#34; Topbar&#34;显示时间,电池电量等已消失,蓝色分隔线仍在此处。 如果有人愿意和我分享解决方案会很棒,非常感谢!

enter image description here

2 个答案:

答案 0 :(得分:6)

只需将此行添加到Dialog.onCreateView()方法:

&#13;
&#13;
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
&#13;
&#13;
&#13;

答案 1 :(得分:0)

http://jgilfelt.github.io/android-actionbarstylegenerator

  

它将生成所有必要的九个补丁资源以及相关的XML drawable和样式,您可以将它们直接复制到项目中。

您创建的主题与这些样式类似

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme" parent="@style/Theme.Holo.Light.DarkActionBar">
       <item name="android:actionBarStyle">@style/MyActionBar</item>
    </style>

<!-- ActionBar styles -->
  <style name="MyActionBar" parent="@style/Widget.Holo.Light.ActionBar.Solid.Inverse">
       <item name="android:background">#ff0000</item>
  </style>
</resources>

在此之后,您将主题应用于整个应用或个人活动:

如需进一步阅读,请参阅documentation