私は、特定のアクティビティ(基本的に、小さなゲームのための「データモデル」)でアクセスする必要がある変数がたくさんあるAndroidアプリを書いています。現在、私はそれらをすべて1つの巨大な "コンテナ"クラスに格納していますので、私は自分のアクティビティクラスを汚染することなく簡単にそれらを参照できます。例:Androidのリソースシステムに似たものがありますか?
public class Model
{
private int a;
private String b;
private float c;
...
public int getA()
{
return a;
}
public void setA(int a)
{
this.a = a;
}
public String getB()
{
return b;
}
public void setB(String b)
{
this.b = b;
}
public float getC()
{
return c;
}
public void setC(float c)
{
this.c = c;
}
...
}
ご覧のとおり、これらはさまざまな種類のもので、すべてゲッタとセッタを備えています。しかし、このように保管するのは面倒です。私はまた、変数のグループを反復したいと思いますが、このフラットなゲッタ/セッタフォーマットでは、実際にはできません。
私はAndroidのリソースシステムについて認識していますが、変数がアプリ全体/グローバルではないため、これは適していないようです。これらは、この特定のアクティビティの生存期間中にのみ存在し、アクティビティが開始されるたびにプログラムによって生成されます。
私はそれらをすべてMap<String, Object>
構造体に入れることを考えていました。ここで、各変数をStringキーで参照することができました。これは、地図上でput
またはget
を呼び出すことができるので、ゲッタとセッタがたくさんあるコンテナクラスを持つ必要がなくなります。しかし、地図から価値を得たいと思うときはいつでも、予想されるタイプにキャストする必要があります。私はその音が気に入らない。
誰かがより良い解決策を手に入れましたか?より小さな、より一時的なスケールで使用できるAndroidのリソースシステムに類似したものがありますか?
を。それがあなたが意味するものなのかどうかはわかりません。 – Tooroop