如何在res \ menu中创建TextView?

时间:2012-12-05 11:28:25

标签: android android-menu

我正在尝试在菜单中创建TextView,文本将动态设置。现在我的菜单有:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/action_search"
        android:actionViewClass="android.widget.SearchView"
        android:icon="@android:drawable/ic_menu_search"
        android:showAsAction="ifRoom"
        android:title="Search"/>
    <item
        android:id="@+id/action_sync"
        android:icon="@drawable/ic_menu_refresh"
        android:showAsAction="ifRoom"
        android:title="Sync"/>

</menu>

如何创建仅包含文字的项目?

2 个答案:

答案 0 :(得分:3)

如果您只想显示文字,只需在menu.xml中添加一个图标即可。如果要更改代码中的文本,可以在活动回调中的onPrepareOptionsMenu()中执行此操作:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    MenuItem myItem = menu.findItem(R.id.the_item);
    myItem.setTitle("bla");
    return true;
}

答案 1 :(得分:1)

我认为如果你想要自定义,如颜色,文字大小或字体,你应该有文本视图:

    String title = "MyTitle";

    TextView tvMiTitle = new TextView(getActivity());
    tvMiTitle.setText(title);
    tvMiTitle.setTextColor(Color.WHITE);
    // ==
    // MenuItem myMenuItem;
    myMenuItem.setActionView(tvMiTitle);