Man*_*wal 8 android menu menuitem android-actionbar
我正在创建一个具有操作栏的android应用程序,操作栏包含两侧的菜单项.所以,我需要在左侧添加一个菜单项,在操作栏的右侧添加一个菜单项.
为此,我创建了一个自定义布局并将其设置为操作栏.如下图所示

但我只想在左侧和右侧的位置有菜单项,另一个屏幕截图显示带有菜单项的操作栏

在此操作栏包含菜单项.所以,我只想把加号按钮菜单项放在左侧,与第一个屏幕截图相同,但我不想使用自定义布局,
此外,我需要chnage操作栏标题的字体样式,并将其置于中心.
请帮我.我花了很多时间在这上面.
谢谢
您可以直接将导航绘制添加到您的工具栏试试这个代码:
yourToolbar.setNavigationIcon("Resource id")
yourToolbar.setNavigationOnClickListener(new ClickListener(){})
Run Code Online (Sandbox Code Playgroud)
您必须为此创建一个自定义视图。您不能将选项菜单膨胀用于您的用例。
将 Activity 的样式设置为 Theme.AppCompat,并且不要在 Activity 或应用程序样式中使用 NoActionBar。
创建自定义菜单布局。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageButton android:src="@drawable/add"
android:background="?attr/actionBarItemBackground"
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
android:scaleType="centerInside"
android:id="@+id/action_add"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"/>
<TextView android:text="NewsFeed"
android:background="?attr/actionBarItemBackground"
android:layout_height="?attr/actionBarSize"
android:layout_width="wrap_content"
android:scaleType="centerInside"
android:id="@+id/text_appname"
android:textSize="30sp"
android:textStyle="bold"
android:layout_marginLeft="5dp"
android:textColor="#FFF"
android:paddingTop="5dp"
android:layout_toRightOf="@+id/action_add"
android:layout_alignParentTop="true"/>
<ImageButton android:src="@drawable/search"
android:background="?attr/actionBarItemBackground"
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
android:scaleType="centerInside"
android:id="@+id/action_search"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
在您的活动 onCreate 中添加以下代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mainfeed);
ActionBar mActionBar = getSupportActionBar();
mActionBar.setDisplayShowHomeEnabled(false);
mActionBar.setDisplayShowTitleEnabled(false);
LayoutInflater li = LayoutInflater.from(this);
View customView = li.inflate(R.layout.custom_menu, null);
mActionBar.setCustomView(customView);
mActionBar.setDisplayShowCustomEnabled(true);
ImageButton addContent = (ImageButton) customView.findViewById(R.id.action_add);
addContent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// ...
}
});
ImageButton search = (ImageButton) customView.findViewById(R.id.action_search);
search.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// ...
}
});
}
Run Code Online (Sandbox Code Playgroud)