ポップアップコンテキストメニュー項目のテキストを変更するにはどうすればよいですか?コンテキストメニューにヘッダーを付けたいのですが、基になるコンテンツに基づいて設定したいと思います。コンテキストメニューが静的文字列で検索をポップアップしますが、タイトルを動的に変更したいと思います。MenuItemオブジェクトのハンドルを取得できないようです!
Main.java:70: error: int cannot be dereferenced
[javac] MenuItem mi = R.menu.context_menu.articleTitle;
^
コンテキストメニューを表示するコードは次のとおりです。
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.context_menu, menu);
Article a = display.getArticle();
MenuItem mi = R.menu.context_menu.articleTitle;
mi.setTitle(a.getTitle());
mi = R.id.articleURL; // this doesn't work either
mi.setTitle(a.url);
}
私も試しました
MenuItem mi = (MenuItem) findViewById(R.id.articleTitle);
mi.setTitle(a.getTitle());
しかし、それは私にNullPointerExceptionを与えました。メニューリソースは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:id="@+id/contextHeader"
android:enabled="false"
>
<item android:id="@+id/articleTitle"
android:title="Title"
/>
<item android:id="@+id/articleURL"
android:title="URL"
/>
</group>
<item android:id="@+id/share"
android:title="Share"
android:icon="@android:drawable/ic_menu_share"
/>
<item android:id="@+id/skip"
android:title="Skip"
android:icon="@android:drawable/ic_media_next"
/>
</menu>