私は最初の Android アプリを作成しています。リリースされる各バージョンで変更される何百ものメニュー リンクがあります。リソース ID に基づいて onclicks を処理する方法を探しています。
メニューは XML で次のように定義されます。
<item android:id="@+id/Spring_2013" android:title="Spring 2013" android:showAsAction="ifRoom|withText" />
onclicks は、strings.xml に保存されている URL をロードします。
<string name="Summer_2013">file:///android_asset/catalog/current/genadmissionreq.html</string>
したがって、必要なのは、選択したリソース ID に基づいて必要な文字列をロードする単純な単一の onclick メソッドだけのようです。MenuItem ID は、コード内の URL 文字列 ID と常に同じです。したがって、何百もの if() または switch/case ステートメントを使用しないと、次のように言えません。
String url = getString("R.string." + menuItem.getItemId());
明らかに、その割り当てはいくつかの理由で機能しません。しかし、あなたはその考えを正しく理解していますか?では、どうすればこれを機能させることができますか?
初心者の質問で申し訳ありません。私はそれが簡単であることを知っていますが、私は何日も読んでいて、すべてのメニュー項目の if() ステートメントなしでこれを行う方法を見つけることができません. その方法では、毎週の更新が悪夢になります!