1

Android の Java コードから離れた場所にナビゲーション構造を保存する適切な方法について質問したいと思います。リソースのxmlファイルにアプリケーション構造を保存したいと思います。プログラムは、生成されたリストでのみ機能します。

以前は、独自の XML をリストに解析していました。各アイテムの id は、呼び出しメソッドを使用して適切なコードを実行します。ただし、速すぎず、プログラマーフレンドリーではありません。

ということで型を使うことにしましたenum。これにより、XML に誤った値を入力する可能性がなくなるわけではありませんが、コード自体にタイプミスが生じる可能性がなくなります。各要素は、押された項目のタイプをチェックするメソッドを (switch-case を使用して) 呼び出し、列挙型の場合APP_ITEMは ID に応じて適切なプログラムを実行します (XML のもう 1 つのマジック ストリング)。

サンプルアプリの構造:

"Main screen"
- Item that runs dialer
- Second item that carries to subscreen
    - Item one
    - Item two

"Second screen"
- Item that runs browser
- Awesome meter

XML で表示:

<app_navigation>
    <screen name="Main screen">
        <item enum="APP_ITEM" id="dialer" name="Item that runs dialer"></item>
        <item name="Second item that carries to subscreen">
            <screen name="Some subscreen">
                <item enum="SOME_ITEM" name="Item one"></item>
                <item enum="SOME_ITEM" name="Item two"></item>
            </screen>
        </item>
    </screen>

    <screen name="Second screen">
        <item enum="APP_ITEM" id="browser" name="Item that runs browser"></item>
        <item enum="SOME_ITEM" name="Awesome meter"></item>
    </screen>
</app_navigation>

ナビゲーション構造をコードから分離するより良い方法はありますか? API 8 からアプリをサポートしたい。

4

0 に答える 0