1

独立したライブラリを使用して、Android でアクションを実行します。エラーが発生した場合、ライブラリは整数の解析可能な文字列エラー コード ( など"233") を含む例外をスローします。エラーコードはいくつかあります。エラー メッセージをエラー コードにマップするプロパティ ファイルを作成したいと考えています。

これは簡単ですが、外部化された文字列 ( など) の ID の値はR.string.divisionError = 2130968584どのビルドでも再生成される可能性があるため、安定しておらず、値が変更される可能性があります。

次のようにそのプロパティ ファイル stg に書き込むことはできません。

233=2130968584

私は置くことができました

233=divisionError

次に、リフレクションを使用してdivisionErrorR.string.class で呼び出されたフィールドを探し、その値を取得して、 を使用して文字列を取得しますgetString(int)

より良い方法はありませんか?

4

1 に答える 1

1

このandroid.content.res.Resourcesクラスには、getIdentifier(String name, String defType, String defPackage)名前がわかっている場合に数値リソース ID を取得するために使用できるメソッドがあります。

そのため、リソース名をプロパティ ファイルに入力し、このメソッドを使用して ID を取得できます。

于 2012-12-23T07:50:48.467 に答える