繁体   English   中英

ActionBar上的自定义菜单项

[英]Custom Menu Item on ActionBar

我现在在菜单中使用“ android:actionLayout”时遇到问题。

我已经使用过此功能并在我以前的一些项目中工作过,但是现在我不知道发生了什么。

当我输入

android:title="@string/menu_notifications"
android:actionLayout="@layout/menu_notification"

我的应用程序中的actionBar中的每个图标都更改为Text。

我尝试了很多没有用的东西。 我不知道发生了什么事。

请一些建议/想法?

编辑:menu_notification.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="wrap_content"
android:layout_height="match_parent">
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="TEST"
android:textSize="20dp"
android:textColor="#F00"
/>
</LinearLayout>

编辑2:

@Override
public boolean onCreateOptionsMenu(Menu menu) {

    getMenuInflater().inflate(R.menu.menu_main, menu);

    return true;
}

将menu_notification.xml更改为

 <?xml version="1.0" encoding="utf-8"?>
 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_height="wrap_content"
  android:layout_width="wrap_content"
  android:text="TEST"
    android:textSize="20dp"
  android:textColor="#F00"
 />

和main.xml,

     <item
     android:id="@+id/log_out"
      android:actionLayout="@layout/menu_notification"
    android:icon="@drawable/power"

 android:showAsAction="always"
/>

然后 ,

 @Override
public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main, menu);
TextView txtview=(TextView )menu.findItem(R.id.log_out).getActionView();
//do remaining stuff here

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM