Android Eclipse Action Bar背景图片

时间:2014-09-25 23:46:08

标签: java android eclipse android-actionbar

我想将自己的图片背景添加到操作栏。我怎样才能做到这一点?另外在左边的这个上面我想添加另一个包含文本的图像。这可能吗?

我根本没有找到任何这方面的例子。

我在values文件夹中有一个“styles.xml”,其中包含实际的背景图片:

<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="AppTheme" parent="android:Theme.Holo" />

<style name="ActionBar">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">45dp</item>
<item name="android:orientation">horizontal</item>
<item name="android:background">@drawable/actionbar_bg</item>
</style>

</resources>

我在布局文件夹中还有一个“actionbarbg.xml”,其中包含我提到的文字图片:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/ActionBar" >

<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="false"
android:paddingLeft="15dip"
android:scaleType="center"
android:src="@drawable/bannerlogo" />
/>

</LinearLayout>

我在菜单文件夹中有一个“actionbar.xml”,其中包含操作栏上的2个菜单按钮。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
android:id="@+id/item_refresh"
android:icon="@drawable/help"
android:title="Refresh"
android:showAsAction="ifRoom|withText" />

<item
android:id="@+id/item_save"
android:icon="@drawable/info"
android:title="Save"
android:showAsAction="ifRoom|withText" />

</menu>

我的主要课程中的代码:

ActionBar actionBar = getActionBar();

actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
LayoutInflater mInflater = LayoutInflater.from(this);

View mCustomView = mInflater.inflate(R.layout.actionbarbg, null);

actionBar.setCustomView(mCustomView);
actionBar.setDisplayShowCustomEnabled(true);

结果如下:

Test result

2 个答案:

答案 0 :(得分:0)

您使用的是Android 4.0或更高版本吗? 此外,使用sherlock操作栏可能更容易做到这一点

答案 1 :(得分:0)

根据要求,也许你可以尝试设置android:src和android:background。