在我的Android应用程序中,我隐藏了默认标题栏,引入了TabView并在TabView的标签下添加了我自己的标题栏。目前,我正在使用?android:attr / windowTitleStyle样式,这使我的新标题栏显示为灰色和渐变。它看起来不错,但我的屏幕看起来非常灰度。我想通过使这个标题栏成为不同的颜色渐变来增加一些东西。
我在这看什么?创建我自己的图像并使用它? ?android:attr / windowTitleStyle样式似乎会根据自定义标题栏的高度进行扩展;所以我不确定它实际上只是一张图片。
我试图用一点半透明的方式抛出一个LinearLayout(例如:使颜色为#800000FF),但我在此LinearLayout后面的渐变样式消失了。
感谢您的帮助
更新
根据我在下面的回答,我发现我可以创建一个定义渐变的XML文件并使用它。它在我的布局上的LinearLayout(titlebar_gradient)中工作正常。但是,它不适用于最外层的LinearLayout(background_gradient)。有人能告诉我为什么吗?据我了解,ListView应该是透明的......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background_gradient"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="47dip"
android:background="@drawable/titlebar_gradient"
android:gravity="center">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Item"
style="?android:attr/windowTitleStyle"
android:paddingLeft="5dip"
android:maxLines="1"
android:ellipsize="end" />
</LinearLayout>
<ListView
android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="10dip"
android:clickable="false"
/>
<TextView
android:id="@+id/android:empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
答案 0 :(得分:9)
我现在明白我的问题了。
我在drawables文件夹中创建了一个XML文件,看起来像这样
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#00CC66"
android:endColor="#009966"
android:angle="270"/>
/shape>
在我的工具栏中,我将背景设置为此drawable。
答案 1 :(得分:3)
是的,我也看到了一个例子,用于为线性布局或此网站上的按钮提供渐变颜色http://android-codes-examples.blogspot.com/2011/04/animated-customized-popup-transparent.html