問題タブ [android-menu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
889 参照

java - アンドロイドメニューインフレーションエラー前のコンディションチェック

条件が満たされている場合にAndroidメニューを膨らませる可能性はありますか、それが可能であることを願っています。

条件チェックが失敗した場合にメニューが膨張しないようにするために、条件チェックコードを配置する必要がある場所

どの行で状態チェックを行うか、状態が失敗したときにメニューが膨張するのを止めることができます..

0 投票する
2 に答える
2429 参照

android - Android: オプション メニューの外観とアイコンが表示されない

Android のオプション メニューでいくつかの問題に直面しています。

これが私のコードです:

res フォルダー内に、以下のコードを使用して menu.xml ファイルを含むメニュー フォルダーを作成しました。

そして、これは私の SimpleOptionMenuActivity.java ファイルです:

1) エミュレーターのメニュー ボタンをクリックすると、メニューが ListView のように表示されます。行 (これはよくあることですが、これを適切に説明する方法がわかりません)。

2) 画像が表示されない。R.java ファイルを確認しました。アイコンは描画可能な内部クラス内に存在しますが、それでもメニューに表示されません。

2つの問題を解決するのを手伝ってください。

0 投票する
1 に答える
541 参照

android - 子タブに干渉せずにTabActivityメニューを使用する方法

このトピックは他のトピックと似ているように見えますが、この場合に役立つ答えは見つかりませんでした。

これが私が欲しいものです:私はメニューのあるタブを持っていTabActivityます。メニューのないタブが含まれています。メニューボタンを押すと、既存のメニューだけが表示されます。メニューを膨らませるだけなら、これはうまくいきます。しかし、メニューの内容を変更したい場合(onPrepareOptionsMenu(menu)メソッド内の項目の表示を変更したい場合)、またはメニューの項目を押した場合でも、何も機能しません。

の場合onPrepareOptionsMenu(menu)、問題はmenu.findItem(...)nullオブジェクトを返すメソッドに起因しているようNullPointerExceptionです。ではonOptionsItemSelected(item)、どのアイテムIDも認識されません。

メニューのコンテキストが現在のタブのアクティビティであることにデバッガーで気付いたので、代わりにそのアクティビティ内にメニューを移動しましたが、それ以上の成功はありませんでした。

最後に、以前のバージョンのアプリで同じメニューと非常によく似たコードを使用し、単一のアクティビティ(タブなし)を使用していましたが、問題は発生しませんでした。TabActivityデザインに移動したとき、最初は正常に機能していましたが(おそらく、メニューのコンテキストはタブTabActivityの代わりに私のActivityものでした)、タブのアクティビティに小さな変更を加えた後は機能しなくなりました(メニュー)。

(およびサポートパッケージを)使用することでこれが修正されると思われる場合はActionBar、後で移行する予定ですが、最初にこれを理解して修正したいと思います。

コードは次のとおりです。

これがメニューのXMLファイルです。特別なことは何もありません。

編集:onPrepareOptionsMenu(menu) NullPointerExceptionを回避するために、に以下を追加しました。実際の問題は解決しませんが、クリックするとどうなるかを正確に確認できます。MenuItem

最初の項目をクリックすると、getItemId()たとえば2131165207が返され、2番目の項目は2131165208が返されます(確認しましたが、これらはViews2番目のタブのIDです!!)が、スイッチ/ケースを入力するために返される値です。それぞれ21311652152131165216であるため、前に述べたように、アイテムIDに問題があります。メニューの値は常に現在のアクティビティのインスタンスであるActivityため、最初のタブのメニューを使用してこのテストを行いました。ただし、メニューを含むコンテキストとアクティビティは同じですが、それでも機能しません。mContext

0 投票する
2 に答える
5773 参照

android - Contextual Action Bar から ListView アイテムのテキストにアクセスする

長いクリック選択で ListView 項目のテキストにアクセスする必要があります。古いAndroidバージョンの場合、以下のコードを使用してコンテキストメニューでこれを正常に実行しました.

ただし、新しい Android バージョンでは、コンテキスト アクション バーでこれを行いたいのですが、バーで項目を選択した後に選択したテキストを抽出する方法がわかりません。以下のコードは機能しません。

Contextual Action Bar は問題なく表示されますが、そこからアイテムを選択すると、AdapterContextMenuInfo 行で NullPointerException が発生します。これは、明らかにアクション バーではなくコンテキスト メニュー用に作成されたものだからです。おそらくアクションバーにこれに相当するものはありますか? または、この場合、ListView アイテムのテキストを取得するにはどうすればよいですか? ありがとう。

0 投票する
1 に答える
211 参照

android - アクションバーのオーバーフローとしてではなく、ICSのタスクスイッチャーの横にメニューボタンを配置する

以下のスクリーンショット。ご覧のとおり、私のメニューボタンがactionBarのオーバーフロー領域に表示されています。2番目の行が追加されるため、縦向きではうまく機能しません(明らかに、私のタブの横には収まりません)。横向きでは問題ないように見えますが、タブが横向きで表示される方法を変更するため、縦向きと同じ問題が発生することになります。したがって、私が達成する必要があるのは、メニューボタンを画面の下部の黒い領域に配置することです。これは、実際にはレガシーサポートであると私は理解しています。他のアプリで見たように、メニューボタンをタスクスイッチャーの右側に送信することを宣言する方法はありませんか?AndroidManifestでtargetSDKversionを変更するソリューションはありますか?

ポートレート風景

0 投票する
2 に答える
1154 参照

android - ActionBar のアイコンを変更する際の問題

私のアプリケーションは、起動時に Web サービスを呼び出して、ユーザーがログインしているかどうかを確認します。ログインしている場合は、ログアウト アイコンを表示する必要があります。ログインしていない場合は、ログイン アイコンを表示する必要があります。アプリケーションのバージョンがログインをサポートしていない場合は、引き続きアイコンを表示しない必要があります。

Web サービスが戻ったときにアイコンを表示するにはどうすればよいですか? 2.3 を使用しているため、invalidateOptionsMenu() を呼び出すことができません。また、onPrepareOptionsMenu() に追加しようとすると、ActionBar ではなくメニュー ボタンを押したときにメニューに表示されます。

0 投票する
1 に答える
521 参照

android - AndroidはDBフィールドに基づいてメニュー項目を動的に追加します

ユーザーがListView. 基本的に、選択したアイテムのDBにtrueに設定されたフィールドがあるかどうかを確認しています。もしそうなら、私は余分なメニュー項目を追加します.

選択したアイテムのDBを照会してonItemCheckedStateChanged()、メニューを無効にしようとしました。onPrepareActionMode()これにより、必要に応じて追加のオプションを表示できる場所が呼び出されます。

DB 列が true に設定された状態で既に選択されているオプションは、特別な DB 列が false に設定されている項目が選択されたときに記憶されず、余分なメニュー項目が呼び出されたときに削除される onItemCheckedStateChanged()ため、これは機能しません。onPrepareActionMode()

どうすればこれに近づくことができますか?基本的にListView、追加のメニュー項目を表示できるように、DB の追加フィールドが true に設定されているすべての選択項目を記憶する方法が必要です。逆に、選択したListView項目にその DB フィールドがない場合は項目を削除します。

0 投票する
8 に答える
10331 参照

android - openOptionsMenu 関数が ICS で機能しない?

アクションバー互換性ライブラリを使用しています。openOptionsMenu() 関数を使用してボタンからオプション メニューを開こうとしていますが、何もしません。

携帯電話のメニュー キーを押すと、通常どおりメニューが表示されます。ここで何が問題なのですか?

0 投票する
2 に答える
1182 参照

android - ページごとに異なるメニューを持つViewPagerIndicator?

ViewPagerIndicator を使用して、1 つのアクティビティでさまざまなページを表示しています。ページごとにメニューボタンを押して、別のメニューを表示させることはできますか?たとえば、ページ 1 には「追加」と「削除」のメニュー項目が表示され、ページ 2 には「編集」と「設定」が表示されますか? これらはばかげた例ですが、アクティビティがインスタンス化されたときにメニューが作成されるように見えるため、メニューボタンを押すとメニューが既に作成されているため、現在表示されているページに関係なく同じメニュー項目が表示されます。ViewPagerIndicator でページを変更するときに onCreateOptionsMenu() をトリガーすることは可能ですか?

0 投票する
3 に答える
11933 参照

android - Android メニューが表示されない

私の電話でメニューボタンがクリックされたときに表示されるカスタムメニューを取得しようとしています。まったく表示されません。

このフォルダー /res/drawable に register.png という名前の登録アイコンがあります。/res/menu というフォルダーに my_menu.xml があります。フォルダーのレイアウトが間違っていましたか、それとも以下のコードに何か問題がありますか。

menu.xml の名前を my_menu.xml に変更しました。コードを変更したところ、次のエラーが発生しました。

[2012-04-07 07:50:43 - HelloWebView] W/ResourceType(1560): 不正な XML ブロック: ルート要素ノードが見つかりません [2012-04-07 07:50:43 - HelloWebView] C:\Users\josh \workspace\HelloWebView\res\menu\my_menu.xml:4: エラー: パッケージ 'android' の属性 'showAsAction' のリソース識別子が見つかりません

my_menu.xml

メインアプリ