1

私はandroidアプリを構築しており、ユーザーに表示するカテゴリ (〜 50) の膨大なリストを持っています。現在AutoCompleteTextView、ユーザーが選択できるようにするために を使用しています。

しかし、私の問題は、表示する必要があるサブカテゴリの膨大なリスト (カテゴリごとに最大 10) もあり、ユーザーが選択できるようにする必要があることです。サブカテゴリは、選択したカテゴリに基づいて表示する必要があります。

switch-caseでは、 hugeまたはblockを書く以外に、if-elseこれを行うにはどうすればよいでしょうか?

よくわかりませんが、リフレクションを使用してフィールドを検査しR.java、サブカテゴリを含むリソースの ID を取得できますか? もちろん、適切な命名規則を使用していると仮定します。

4

2 に答える 2

1

これは、@ Jordi's answer からのインスピレーションに基づく私の改善です。

正規表現の力を使用して、巨大なXMLファイルにいくつかの変更を加えました。

java.util.Map<String,String[]>キーはカテゴリで、値はサブカテゴリです。

したがって、サブカテゴリのリストを取得するためにmap.keySet()実行できるユーザーの選択に基づいて、カテゴリのリストを取得できます。map.get(selection)

于 2012-08-09T13:22:35.607 に答える
1

レイアウト ファイル内のすべてのカテゴリとサブカテゴリを使用してこれを実装する必要はないと思います。スマートなトリックを簡単に追加できるように、Java コードでレイアウトを生成します。

たとえば、選択した項目を識別するのに役立つ「タグ」値をプログラムで追加できます。

于 2012-08-09T11:45:20.233 に答える