0
から文字列の配列を初期化クラスの先頭にある文字列配列リソースから配列を初期化したいと思います。変数を宣言するときに次のようなことをします:は、私は私のクラスの先頭に次のように宣言した文字列配列のリソース
private String[] mapTypeNames = getResources().getStringArray(R.array.map_types);
アイデアをお持ちですか?
から文字列の配列を初期化クラスの先頭にある文字列配列リソースから配列を初期化したいと思います。変数を宣言するときに次のようなことをします:は、私は私のクラスの先頭に次のように宣言した文字列配列のリソース
private String[] mapTypeNames = getResources().getStringArray(R.array.map_types);
アイデアをお持ちですか?
「クラス」がContext
から継承するものであれば、クラスにフィールドを含めることはできますが、アクティビティのonCreate()
など、適切なライフサイクルメソッドまでフィールドを初期化することはできません。それまではgetResources()
は動作しません。
"クラス"がContext
から継承されないものである場合、構文的に必要なのはデフォルトではできません。そして、独自のgetResources()
メソッドを実装しても、結果的には最終的にContext
が必要になり、正方形に戻ります。
これは私が考えたものです。私は、onCreate()が実行されるたびに配列を初期化するのを避けようとしていました。同時に、良い少年であり、リソースを使用しています。 –
@ChrisRead: "私はonCreate()実行されます " - 何も保存されません。 'onCreate()'は、アクティビティが作成されたときにのみ実行されます。これはインスタンス化された直後です。あなたのフィールドイニシャライザはそうでしょうか? – CommonsWare