저는 특정 액티비티 (기본적으로 작은 게임을위한 "데이터 모델")에서 액세스해야하는 많은 변수가있는 Android 앱을 작성하고 있습니다. 현재, 저는 그것들을 모두 하나의 거대한 "container"클래스에 저장하고 있습니다. 그래서 저는 그것들을 내 activity 클래스를 오염시키지 않고 쉽게 참조 할 수 있습니다. 예 :안드로이드의 리소스 시스템과 비슷한 점이 있습니까?
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;
}
...
}
자세히 알 수 있듯이 유형은 다르며 모두 getter 및 setter가 있습니다. 그러나 이런 식으로 저장하는 것은 번거로울 수 있습니다. 또한 변수 그룹을 반복하고 싶지만이 플랫 게터/세터 형식으로는 실제로 할 수 없습니다.
나는 안드로이드의 자원 시스템에 대해 알고 있지만 변수가 응용 프로그램 전체/전역이 아니기 때문에이 방법은 적합하지 않은 것으로 보입니다. 이러한 활동의 수명 동안 만 존재하며 활동이 시작될 때마다 프로그래밍 방식으로 생성됩니다.
나는이 모든 것을 Map<String, Object>
구조체에 넣을 생각이었습니다. 여기서 구조체는 String 키를 통해 각 변수를 참조 할 수있었습니다. 이렇게하면지도에서 put
또는 get
을 호출 할 수 있으므로 getter 및 setter가 많은 컨테이너 클래스가 필요하지 않습니다. 그러나지도에서 가치를 얻고 싶을 때마다 예상되는 유형으로 캐스팅해야합니다. 나는 그 소리가 싫어.
누구나 더 좋은 해결책이 있습니까? 더 작고 임시적인 규모로 사용할 수있는 Android의 자원 시스템과 비슷한 것이 있습니까?
합니다. 그게 무슨 뜻인지 확실하지 않습니다. – Tooroop