簡體   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