9

私は現在、iPhoneアプリのAndroidへの移植に取り組んでいます。iPhoneアプリの画面下部にはカスタムのグローバルナビゲーションメニューがあり、これをAndroidに持ち込む場合は、このカスタムメニューを一般的なオプションメニュー(デバイスのオプションキーから呼び出される)に置き換えて提供することをお勧めします。よりネイティブなAndroidのルックアンドフィール。

問題は、メニュー自体にいくつかのレイヤーがあることです(たとえば、A、B、Cなどの3つのメインオプションと、A1、A2、A3などのサブオプション)。私は周りを見回しましたが、Androidアプリでこの種のマルチレベルのオプションメニューを見たことがないので、これを最もよく達成する方法に関するいくつかのガイドラインを探しています。

このようなオプションメニューのカスタマイズについていくつか質問があります。Android:アプリケーションのメニューをカスタマイズします(背景色など)。そして彼らは、ネイティブフレームワークが多くのオプションをサポートしていないことを示唆しているようです。

オプションメニューを少しハッキングすることを検討する必要がありますか(これは良い考えですか?)、またはアプリフローを変更するための他のアプローチを検討する必要がありますか?iPhoneアプリからのバリエーションのレベルを減らしながら、Androidで一貫したユーザーエクスペリエンスを維持するための最良の方法を理解しようとしています。

ありがとう!

4

4 に答える 4

9

私は周りを見回しましたが、Androidアプリでこの種のマルチレベルのオプションメニューを見たことがないので、これを最もよく達成する方法に関するいくつかのガイドラインを探しています。

オプションメニューはサブメニューをサポートしますが、深さは1レベルのみです(つまり、メニューにサブメニューを含めることはできますが、サブメニューにサブサブメニューを含めることはできません)。

于 2011-09-14T12:28:08.160 に答える
1

それが本当に必要な場合 (そして、メニューの深さに関する Android プラットフォームの標準に違反したい場合) は、メニューのネストされたすべてのレベルのリストを持つ AlertDialog を使用して、これを簡単に実装できます。視覚的には、オプション メニューとまったく同じように表示されます。

于 2012-05-30T20:22:07.867 に答える
1

バナナが提案したものと同様のことをしました。制限の背後にある理由は、サポートする必要がある無数のデバイスと画面解像度です。複数のネストされたメニューは、タブレットでは見栄えがするかもしれませんが、5 インチの画面ではそうではないかもしれないので、覚えておく必要があります。

于 2012-09-14T17:00:07.233 に答える
0

私にとって、追加

android:onClick="onOptionsItemSelected"

ネストされたメニュー項目が機能しました。

于 2015-07-09T14:08:07.770 に答える