我正在尝试创建一个工具栏,该工具栏的后箭头和标题左对齐,两个按钮右对齐。这两个按钮没有按我想要的顺序显示。
这是布局:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/my_child_toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:background="?attr/colorPrimary"
android:elevation="4dp"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="16dp"
android:background="#aa492f"
android:onClick="onClickExit"
android:src="@drawable/ic_arrow_back_white_24dp"/>
<TextView
android:id="@+id/textView1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="left|top"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="16dp"
android:background="#aa492f"
android:onClick="onClickCashIn"
android:src="@drawable/ic_payment_white_24dp"/>
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="16dp"
android:background="#aa492f"
android:onClick="onClickPay"
android:src="@drawable/ic_send_white_24dp"/>
</android.support.v7.widget.Toolbar>
<GridLayout .../>
</LinearLayout>
我希望按钮ic_payment_white_24dp出现在左侧,而按钮ic_send_white_24dp出现在右侧。但是它们以相反的顺序出现:
我在做什么错?我尝试尝试许多不同的属性,例如android:layout_toRightOf,但我无法正常工作。
答案 0 :(得分:0)
您必须使用
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main_menu, menu);
return true;
}
增加工具栏和Xml的菜单应该是这样
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/place_picker"
android:icon="@drawable/ic_map"
android:orderInCategory="2"
android:title="Search"
app:showAsAction="ifRoom" />
<item
android:id="@+id/random_place"
android:icon="@mipmap/ic_shuffle"
android:title="Pick a Random place"
app:showAsAction="ifRoom" />
</menu>
并重新排列项目,您必须调整android:orderInCategory="2"
才能正确排列
答案 1 :(得分:-1)
为此xml
设计toolbar
。
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:weightSum="1.45">
<LinearLayout
android:id="@+id/layout_toolBar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.15"
android:gravity="center">
<android.support.v7.widget.AppCompatImageView
android:id="@+id/img_toolbar"
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@mipmap/back_arrow" />
</LinearLayout>
<TextView
android:id="@+id/toolBarText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.99"
android:text="@string/app_name"
android:textColor="@android:color/white"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/notification_toolbar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="0.30">
<android.support.v7.widget.AppCompatImageView
android:id="@+id/notifcation_imageView"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_gravity="right"
android:src="@drawable/payment"
android:tint="@android:color/white" />
<android.support.v7.widget.AppCompatImageView
android:id="@+id/logout_toolbar"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_marginLeft="10dp"
android:tint="@android:color/white"
android:src="@drawable/send"/>
</LinearLayout>
</LinearLayout>