如何在Android的操作菜单栏中添加新项?

时间:2015-09-17 21:02:43

标签: android android-layout

我关注menu_main.xml

<menu 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"
tools:context="Test">
<item
    android:id="@+id/action_chat"
    android:orderInCategory="200"
    android:title="Search"
    android:icon="@drawable/ic_chat"
    app:showAsAction="ifTest"
    ></item>
<item
    android:id="@+id/action_user"
    android:orderInCategory="300"
    android:title="User"
    android:icon="@drawable/ic_drawer"
    app:showAsAction="ifTest"></item>

</menu>

我可以在icon中找到两个App-bar(右对齐)。现在我想在最左边的地方添加一个Icon。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

尝试这样。

<RelativeLayout 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="match_parent"
    tools:context=".HomeActivity">

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="..."
    app:contentInsetLeft="0dp"
    app:contentInsetStart="0dp">

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="..."
        android:textColor="..."
        android:textSize="..." />

    <ImageView
        android:id="@+id/..."
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/..."
        android:padding="15dp"
        android:layout_gravity="start"
        android:src="@drawable/..." />

    <ImageView
        android:id="@+id/..."
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end"
        android:padding="15dp"
        android:src="@drawable/..." />

</android.support.v7.widget.Toolbar>
....
....
..all other layout files
</RelativeLayout>

现在在你的主要活动中

...
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my);

    // Set a toolbar to replace the action bar.
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
}
....

这将是mainactivity的布局文件 第一个imageview将在开始

答案 1 :(得分:0)

要为ActionBar添加自定义视图,请使用setCustomView并为其提供您自己的布局文件或视图。这将占用动作栏标题通常所在的空间。