通常,我希望我的ActionBar颜色不是colorPrimary(我的应用程序是深蓝色),而是匹配窗口背景,浅灰色,就像this
文字应该几乎是黑色的,阴影应该仍然在那里。我如何以面向对象的方式实现这一目标? (我不想手动/编程设置onCreate()中操作栏的每个字段)
另一件事是,我正在使SearchView占用整个操作栏,例如this
我希望这种情况下的背景是完全白色的,图标和文字都是深灰色/黑色,怎么做?
我想在上面的SearchView中添加X关闭图标,我该怎么做?
答案 0 :(得分:0)
希望这适合你
header.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:weightSum="2">
<Button
android:id="@+id/back"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_weight="0.1"
android:background="@drawable/back_icon"
android:gravity="center" />
<EditText
android:id="@+id/searchview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_centerInParent="true"
android:layout_marginTop="3dp"
android:layout_weight="1.9"
android:gravity="bottom"
android:hint="Enter customer Mobile Number"
android:inputType="number"
android:textColor="@color/black"
android:textSize="17dp"></EditText>
<Button
android:id="@+id/search_btn"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_margin="5dp"
android:background="@color/white"
android:text="Search" />
</LinearLayout>
</RelativeLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include
android:id="@+id/dash_toolbar"
layout="@layout/header"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/cardview"
android:visibility="gone"
android:layout_margin="3dp"
android:elevation="5dp"
app:cardCornerRadius="5dp"
app:cardMaxElevation="5dp"
app:cardPreventCornerOverlap="false"
app:cardUseCompatPadding="false">
</android.support.v7.widget.CardView>
</LinearLayout>
答案 1 :(得分:0)
<resources>
<style name="ColorTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">YOUR_COLOR_CODE</item>
</style>
</resources>
在AndroidManifest.xml
中将您的应用/活动主题设置为ColorTheme
,如此
android:theme="@style/CustomTheme
在您的应用程序/活动代码中,并以样式
添加代码