私は現在私の現在のAndroidアプリプロジェクトにちょっと立ち往生していますが、私のAppPreferenceクラスに84の変数があります。今では、これらの変数を1つずつ取得してパッケージを作成し、私は多分反射が私はそれを行うに役立つだろうと考えていた、ここで私がやろうとしているものです:Androidでのリフレクション?
1.-私のiとjの変数のうち、文字列を構築します。
for(int i=1;i <= 7;i++){
for(int j = 1;j <=4;j++){
String func ="getD"+i+"t"+j+"h";
}
}
2.-私の機能は次のとおりです:
public class AppPreferences {
public static final String NOZZ = "nozzles";
public static final String TANK = "tank";
public static final String SYNC ="sync";
//Day 1
public static final String D1T1H = "d1t1h";
public static final String D1T1M = "d1t1m";
public static final String D1T1RT = "d1t1rt";
public static final String D1T2H = "d1t2h";
public static final String D1T2M = "d1t2m";
public static final String D1T2RT = "d1t2rt";
public static final String D1T3H = "d1t3h";
public static final String D1T3M = "d1t3m";
public static final String D1T3RT = "d1t3rt";
public static final String D1T4H = "d1t4h";
public static final String D1T4M = "d1t4m";
public static final String D1T4RT = "d1t4rt";
//Day 2
public static final String D2T1H = "d2t1h";
public static final String D2T1M = "d2t1m";
public static final String D2T1RT = "d2t1rt";
public static final String D2T2H = "d2t2h";
public static final String D2T2M = "d2t2m";
public static final String D2T2RT = "d2t2rt";
public static final String D2T3H = "d2t3h";
public static final String D2T3M = "d2t3m";
public static final String D2T3RT = "d2t3rt";
public static final String D2T4H = "d2t4h";
public static final String D2T4M = "d2t4m";
public static final String D2T4RT = "d2t4rt";
//Day 3
public static final String D3T1H = "d3t1h";
public static final String D3T1M = "d3t1m";
public static final String D3T1RT = "d3t1rt";
public static final String D3T2H = "d3t2h";
public static final String D3T2M = "d3t2m";
public static final String D3T2RT = "d3t2rt";
public static final String D3T3H = "d3t3h";
public static final String D3T3M = "d3t3m";
public static final String D3T3RT = "d3t3rt";
public static final String D3T4H = "d3t4h";
public static final String D3T4M = "d3t4m";
public static final String D3T4RT = "d3t4rt";
//Day 4
public static final String D4T1H = "d4t1h";
public static final String D4T1M = "d4t1m";
public static final String D4T1RT = "d4t1rt";
public static final String D4T2H = "d4t2h";
public static final String D4T2M = "d4t2m";
public static final String D4T2RT = "d4t2rt";
public static final String D4T3H = "d4t3h";
public static final String D4T3M = "d4t3m";
public static final String D4T3RT = "d4t3rt";
public static final String D4T4H = "d4t4h";
public static final String D4T4M = "d4t4m";
public static final String D4T4RT = "d4t4rt";
//Day 5
public static final String D5T1H = "d5t1h";
public static final String D5T1M = "d5t1m";
public static final String D5T1RT = "d5t1rt";
public static final String D5T2H = "d5t2h";
public static final String D5T2M = "d5t2m";
public static final String D5T2RT = "d5t2rt";
public static final String D5T3H = "d5t3h";
public static final String D5T3M = "d5t3m";
public static final String D5T3RT = "d5t3rt";
public static final String D5T4H = "d5t4h";
public static final String D5T4M = "d5t4m";
public static final String D5T4RT = "d5t4rt";
//Day 6
public static final String D6T1H = "d6t1h";
public static final String D6T1M = "d6t1m";
public static final String D6T1RT = "d6t1rt";
public static final String D6T2H = "d6t2h";
public static final String D6T2M = "d6t2m";
public static final String D6T2RT = "d6t2rt";
public static final String D6T3H = "d6t3h";
public static final String D6T3M = "d6t3m";
public static final String D6T3RT = "d6t3rt";
public static final String D6T4H = "d6t4h";
public static final String D6T4M = "d6t4m";
public static final String D6T4RT = "d6t4rt";
//Day 7
public static final String D7T1H = "d7t1h";
public static final String D7T1M = "d7t1m";
public static final String D7T1RT = "d7t1rt";
public static final String D7T2H = "d7t2h";
public static final String D7T2M = "d7t2m";
public static final String D7T2RT = "d7t2rt";
public static final String D7T3H = "d7t3h";
public static final String D7T3M = "d7t3m";
public static final String D7T3RT = "d7t3rt";
public static final String D7T4H = "d7t4h";
public static final String D7T4M = "d7t4m";
public static final String D7T4RT = "d7t4rt";
private static final String APP_SHARED_PREFS = AppPreferences.class.getSimpleName();
private SharedPreferences _sharedPrefs;
private SharedPreferences.Editor _prefsEditor;
public AppPreferences(Context context){
this._sharedPrefs = context.getSharedPreferences(APP_SHARED_PREFS, Activity.MODE_PRIVATE);
this._prefsEditor = _sharedPrefs.edit();
}
public String getSync(){
return _sharedPrefs.getString(SYNC,"0");
}
public void setSync(String text){
_prefsEditor.putString(SYNC, text);
_prefsEditor.commit();
}
public String getNozz(){
return _sharedPrefs.getString(NOZZ,"00");
}
public void setNozz(String text){
_prefsEditor.putString(NOZZ, text);
_prefsEditor.commit();
}
public String getTank(){
return _sharedPrefs.getString(TANK,"00");
}
public void setTank(String text){
_prefsEditor.putString(TANK, text);
_prefsEditor.commit();
}
//DAY 1 T1
public String getD1t1h(){
return _sharedPrefs.getString(D1T1H,"00");
}
public void setD1t1h(String text){
_prefsEditor.putString(D1T1H, text);
_prefsEditor.commit();
}
public String getD1t1m(){ return _sharedPrefs.getString(D1T1M,"00"); }
public void setD1t1m(String text){
_prefsEditor.putString(D1T1M, text);
_prefsEditor.commit();
}
public String getD1t1rt(){
return _sharedPrefs.getString(D1T1RT,"00");
}
public void setD1t1rt(String text){
_prefsEditor.putString(D1T1RT, text);
_prefsEditor.commit();
}
//DAY 1 T2
public String getD1t2h(){
return _sharedPrefs.getString(D1T2H,"00");
}
public void setD1t2h(String text){
_prefsEditor.putString(D1T2H, text);
_prefsEditor.commit();
}
public String getD1t2m(){ return _sharedPrefs.getString(D1T2M,"00"); }
public void setD1t2m(String text){
_prefsEditor.putString(D1T2M, text);
_prefsEditor.commit();
}
public String getD1t2rt(){
return _sharedPrefs.getString(D1T2RT,"00");
}
public void setD1t2rt(String text){
_prefsEditor.putString(D1T2RT, text);
_prefsEditor.commit();
}
//DAY 1 T3
public String getD1t3h(){
return _sharedPrefs.getString(D1T3H,"00");
}
public void setD1t3h(String text){
_prefsEditor.putString(D1T3H, text);
_prefsEditor.commit();
}
public String getD1t3m(){ return _sharedPrefs.getString(D1T3M,"00"); }
public void setD1t3m(String text){
_prefsEditor.putString(D1T3M, text);
_prefsEditor.commit();
}
public String getD1t3rt(){
return _sharedPrefs.getString(D1T3RT,"00");
}
public void setD1t3rt(String text){
_prefsEditor.putString(D1T3RT, text);
_prefsEditor.commit();
}
//DAY 1 T4
public String getD1t4h(){
return _sharedPrefs.getString(D1T4H,"00");
}
public void setD1t4h(String text){
_prefsEditor.putString(D1T4H, text);
_prefsEditor.commit();
}
public String getD1t4m(){ return _sharedPrefs.getString(D1T4M,"00"); }
public void setD1t4m(String text){
_prefsEditor.putString(D1T4M, text);
_prefsEditor.commit();
}
public String getD1t4rt(){
return _sharedPrefs.getString(D1T4RT,"00");
}
public void setD1t4rt(String text){
_prefsEditor.putString(D1T4RT, text);
_prefsEditor.commit();
}
//---------------------
//DAY 2 T1
public String getD2t1h(){
return _sharedPrefs.getString(D2T1H,"00");
}
public void setD2t1h(String text){
_prefsEditor.putString(D2T1H, text);
_prefsEditor.commit();
}
public String getD2t1m(){ return _sharedPrefs.getString(D2T1M,"00"); }
public void setD2t1m(String text){
_prefsEditor.putString(D2T1M, text);
_prefsEditor.commit();
}
public String getD2t1rt(){
return _sharedPrefs.getString(D2T1RT,"00");
}
public void setD2t1rt(String text){
_prefsEditor.putString(D2T1RT, text);
_prefsEditor.commit();
}
//DAY 2 T2
public String getD2t2h(){
return _sharedPrefs.getString(D2T2H,"00");
}
public void setD2t2h(String text){
_prefsEditor.putString(D2T2H, text);
_prefsEditor.commit();
}
public String getD2t2m(){ return _sharedPrefs.getString(D2T2M,"00"); }
public void setD2t2m(String text){
_prefsEditor.putString(D2T2M, text);
_prefsEditor.commit();
}
public String getD2t2rt(){
return _sharedPrefs.getString(D2T2RT,"00");
}
public void setD2t2rt(String text){
_prefsEditor.putString(D2T2RT, text);
_prefsEditor.commit();
}
//DAY 2 T3
public String getD2t3h(){
return _sharedPrefs.getString(D2T3H,"00");
}
public void setD2t3h(String text){
_prefsEditor.putString(D2T3H, text);
_prefsEditor.commit();
}
public String getD2t3m(){ return _sharedPrefs.getString(D2T3M,"00"); }
public void setD2t3m(String text){
_prefsEditor.putString(D2T3M, text);
_prefsEditor.commit();
}
public String getD2t3rt(){
return _sharedPrefs.getString(D2T3RT,"00");
}
public void setD2t3rt(String text){
_prefsEditor.putString(D2T3RT, text);
_prefsEditor.commit();
}
//DAY 2 T4
public String getD2t4h(){
return _sharedPrefs.getString(D2T4H,"00");
}
public void setD2t4h(String text){
_prefsEditor.putString(D2T4H, text);
_prefsEditor.commit();
}
public String getD2t4m(){ return _sharedPrefs.getString(D2T4M,"00"); }
public void setD2t4m(String text){
_prefsEditor.putString(D2T4M, text);
_prefsEditor.commit();
}
public String getD2t4rt(){
return _sharedPrefs.getString(D2T4RT,"00");
}
public void setD2t4rt(String text){
_prefsEditor.putString(D2T4RT, text);
_prefsEditor.commit();
}
//-------------------
//DAY 3 T1
public String getD3t1h(){
return _sharedPrefs.getString(D3T1H,"00");
}
public void setD3t1h(String text){
_prefsEditor.putString(D3T1H, text);
_prefsEditor.commit();
}
public String getD3t1m(){ return _sharedPrefs.getString(D3T1M,"00"); }
public void setD3t1m(String text){
_prefsEditor.putString(D3T1M, text);
_prefsEditor.commit();
}
public String getD3t1rt(){
return _sharedPrefs.getString(D3T1RT,"00");
}
public void setD3t1rt(String text){
_prefsEditor.putString(D3T1RT, text);
_prefsEditor.commit();
}
//DAY 3 T2
public String getD3t2h(){
return _sharedPrefs.getString(D3T2H,"00");
}
public void setD3t2h(String text){
_prefsEditor.putString(D3T2H, text);
_prefsEditor.commit();
}
public String getD3t2m(){ return _sharedPrefs.getString(D3T2M,"00"); }
public void setD3t2m(String text){
_prefsEditor.putString(D3T2M, text);
_prefsEditor.commit();
}
public String getD3t2rt(){
return _sharedPrefs.getString(D3T2RT,"00");
}
public void setD3t2rt(String text){
_prefsEditor.putString(D3T2RT, text);
_prefsEditor.commit();
}
//DAY 3 T3
public String getD3t3h(){
return _sharedPrefs.getString(D3T3H,"00");
}
public void setD3t3h(String text){
_prefsEditor.putString(D3T3H, text);
_prefsEditor.commit();
}
public String getD3t3m(){ return _sharedPrefs.getString(D3T3M,"00"); }
public void setD3t3m(String text){
_prefsEditor.putString(D3T3M, text);
_prefsEditor.commit();
}
public String getD3t3rt(){
return _sharedPrefs.getString(D3T3RT,"00");
}
public void setD3t3rt(String text){
_prefsEditor.putString(D3T3RT, text);
_prefsEditor.commit();
}
//DAY 3 T4
public String getD3t4h(){
return _sharedPrefs.getString(D3T4H,"00");
}
public void setD3t4h(String text){
_prefsEditor.putString(D3T4H, text);
_prefsEditor.commit();
}
public String getD3t4m(){ return _sharedPrefs.getString(D3T4M,"00"); }
public void setD3t4m(String text){
_prefsEditor.putString(D3T4M, text);
_prefsEditor.commit();
}
public String getD3t4rt(){
return _sharedPrefs.getString(D3T4RT,"00");
}
public void setD3t4rt(String text){
_prefsEditor.putString(D3T4RT, text);
_prefsEditor.commit();
}
//-----------------------
//DAY 4 T1
public String getD4t1h(){
return _sharedPrefs.getString(D4T1H,"00");
}
public void setD4t1h(String text){
_prefsEditor.putString(D4T1H, text);
_prefsEditor.commit();
}
public String getD4t1m(){ return _sharedPrefs.getString(D4T1M,"00"); }
public void setD4t1m(String text){
_prefsEditor.putString(D4T1M, text);
_prefsEditor.commit();
}
public String getD4t1rt(){
return _sharedPrefs.getString(D4T1RT,"00");
}
public void setD4t1rt(String text){
_prefsEditor.putString(D4T1RT, text);
_prefsEditor.commit();
}
//DAY 4 T2
public String getD4t2h(){
return _sharedPrefs.getString(D4T2H,"00");
}
public void setD4t2h(String text){
_prefsEditor.putString(D4T2H, text);
_prefsEditor.commit();
}
public String getD4t2m(){ return _sharedPrefs.getString(D4T2M,"00"); }
public void setD4t2m(String text){
_prefsEditor.putString(D4T2M, text);
_prefsEditor.commit();
}
public String getD4t2rt(){
return _sharedPrefs.getString(D4T2RT,"00");
}
public void setD4t2rt(String text){
_prefsEditor.putString(D4T2RT, text);
_prefsEditor.commit();
}
//DAY 4 T3
public String getD4t3h(){
return _sharedPrefs.getString(D4T3H,"00");
}
public void setD4t3h(String text){
_prefsEditor.putString(D4T3H, text);
_prefsEditor.commit();
}
public String getD4t3m(){ return _sharedPrefs.getString(D4T3M,"00"); }
public void setD4t3m(String text){
_prefsEditor.putString(D4T3M, text);
_prefsEditor.commit();
}
public String getD4t3rt(){
return _sharedPrefs.getString(D4T3RT,"00");
}
public void setD4t3rt(String text){
_prefsEditor.putString(D4T3RT, text);
_prefsEditor.commit();
}
//DAY 4 T4
public String getD4t4h(){
return _sharedPrefs.getString(D4T4H,"00");
}
public void setD4t4h(String text){
_prefsEditor.putString(D4T4H, text);
_prefsEditor.commit();
}
public String getD4t4m(){ return _sharedPrefs.getString(D4T4M,"00"); }
public void setD4t4m(String text){
_prefsEditor.putString(D4T4M, text);
_prefsEditor.commit();
}
public String getD4t4rt(){
return _sharedPrefs.getString(D4T4RT,"00");
}
public void setD4t4rt(String text){
_prefsEditor.putString(D4T4RT, text);
_prefsEditor.commit();
}
//-----------------------
//DAY 5 T1
public String getD5t1h(){
return _sharedPrefs.getString(D5T1H,"00");
}
public void setD5t1h(String text){
_prefsEditor.putString(D5T1H, text);
_prefsEditor.commit();
}
public String getD5t1m(){ return _sharedPrefs.getString(D5T1M,"00"); }
public void setD5t1m(String text){
_prefsEditor.putString(D5T1M, text);
_prefsEditor.commit();
}
public String getD5t1rt(){
return _sharedPrefs.getString(D5T1RT,"00");
}
public void setD5t1rt(String text){
_prefsEditor.putString(D5T1RT, text);
_prefsEditor.commit();
}
//DAY 5 T2
public String getD5t2h(){
return _sharedPrefs.getString(D5T2H,"00");
}
public void setD5t2h(String text){
_prefsEditor.putString(D5T2H, text);
_prefsEditor.commit();
}
public String getD5t2m(){ return _sharedPrefs.getString(D5T2M,"00"); }
public void setD5t2m(String text){
_prefsEditor.putString(D5T2M, text);
_prefsEditor.commit();
}
public String getD5t2rt(){
return _sharedPrefs.getString(D5T2RT,"00");
}
public void setD5t2rt(String text){
_prefsEditor.putString(D5T2RT, text);
_prefsEditor.commit();
}
//DAY 5 T3
public String getD5t3h(){
return _sharedPrefs.getString(D5T3H,"00");
}
public void setD5t3h(String text){
_prefsEditor.putString(D5T3H, text);
_prefsEditor.commit();
}
public String getD5t3m(){ return _sharedPrefs.getString(D5T3M,"00"); }
public void setD5t3m(String text){
_prefsEditor.putString(D5T3M, text);
_prefsEditor.commit();
}
public String getD5t3rt(){
return _sharedPrefs.getString(D5T3RT,"00");
}
public void setD5t3rt(String text){
_prefsEditor.putString(D5T3RT, text);
_prefsEditor.commit();
}
//DAY 5 T4
public String getD5t4h(){
return _sharedPrefs.getString(D5T4H,"00");
}
public void setD5t4h(String text){
_prefsEditor.putString(D5T4H, text);
_prefsEditor.commit();
}
public String getD5t4m(){ return _sharedPrefs.getString(D5T4M,"00"); }
public void setD5t4m(String text){
_prefsEditor.putString(D5T4M, text);
_prefsEditor.commit();
}
public String getD5t4rt(){
return _sharedPrefs.getString(D5T4RT,"00");
}
public void setD5t4rt(String text){
_prefsEditor.putString(D5T4RT, text);
_prefsEditor.commit();
}
//-----------------------
//DAY 6 T1
public String getD6t1h(){
return _sharedPrefs.getString(D6T1H,"00");
}
public void setD6t1h(String text){
_prefsEditor.putString(D6T1H, text);
_prefsEditor.commit();
}
public String getD6t1m(){ return _sharedPrefs.getString(D6T1M,"00"); }
public void setD6t1m(String text){
_prefsEditor.putString(D6T1M, text);
_prefsEditor.commit();
}
public String getD6t1rt(){
return _sharedPrefs.getString(D6T1RT,"00");
}
public void setD6t1rt(String text){
_prefsEditor.putString(D6T1RT, text);
_prefsEditor.commit();
}
//DAY 6 T2
public String getD6t2h(){
return _sharedPrefs.getString(D6T2H,"00");
}
public void setD6t2h(String text){
_prefsEditor.putString(D6T2H, text);
_prefsEditor.commit();
}
public String getD6t2m(){ return _sharedPrefs.getString(D6T2M,"00"); }
public void setD6t2m(String text){
_prefsEditor.putString(D6T2M, text);
_prefsEditor.commit();
}
public String getD6t2rt(){
return _sharedPrefs.getString(D6T2RT,"00");
}
public void setD6t2rt(String text){
_prefsEditor.putString(D6T2RT, text);
_prefsEditor.commit();
}
//DAY 6 T3
public String getD6t3h(){
return _sharedPrefs.getString(D6T3H,"00");
}
public void setD6t3h(String text){
_prefsEditor.putString(D6T3H, text);
_prefsEditor.commit();
}
public String getD6t3m(){ return _sharedPrefs.getString(D6T3M,"00"); }
public void setD6t3m(String text){
_prefsEditor.putString(D6T3M, text);
_prefsEditor.commit();
}
public String getD6t3rt(){
return _sharedPrefs.getString(D6T3RT,"00");
}
public void setD6t3rt(String text){
_prefsEditor.putString(D6T3RT, text);
_prefsEditor.commit();
}
//DAY 6 T4
public String getD6t4h(){
return _sharedPrefs.getString(D6T4H,"00");
}
public void setD6t4h(String text){
_prefsEditor.putString(D6T4H, text);
_prefsEditor.commit();
}
public String getD6t4m(){ return _sharedPrefs.getString(D6T4M,"00"); }
public void setD6t4m(String text){
_prefsEditor.putString(D6T4M, text);
_prefsEditor.commit();
}
public String getD6t4rt(){
return _sharedPrefs.getString(D6T4RT,"00");
}
public void setD6t4rt(String text){
_prefsEditor.putString(D6T4RT, text);
_prefsEditor.commit();
}
//-----------------------
//DAY 7 T1
public String getD7t1h(){
return _sharedPrefs.getString(D7T1H,"00");
}
public void setD7t1h(String text){
_prefsEditor.putString(D7T1H, text);
_prefsEditor.commit();
}
public String getD7t1m(){ return _sharedPrefs.getString(D7T1M,"00"); }
public void setD7t1m(String text){
_prefsEditor.putString(D7T1M, text);
_prefsEditor.commit();
}
public String getD7t1rt(){
return _sharedPrefs.getString(D7T1RT,"00");
}
public void setD7t1rt(String text){
_prefsEditor.putString(D7T1RT, text);
_prefsEditor.commit();
}
//DAY 7 T2
public String getD7t2h(){
return _sharedPrefs.getString(D7T2H,"00");
}
public void setD7t2h(String text){
_prefsEditor.putString(D7T2H, text);
_prefsEditor.commit();
}
public String getD7t2m(){ return _sharedPrefs.getString(D7T2M,"00"); }
public void setD7t2m(String text){
_prefsEditor.putString(D7T2M, text);
_prefsEditor.commit();
}
public String getD7t2rt(){
return _sharedPrefs.getString(D7T2RT,"00");
}
public void setD7t2rt(String text){
_prefsEditor.putString(D7T2RT, text);
_prefsEditor.commit();
}
//DAY 7 T3
public String getD7t3h(){
return _sharedPrefs.getString(D7T3H,"00");
}
public void setD7t3h(String text){
_prefsEditor.putString(D7T3H, text);
_prefsEditor.commit();
}
public String getD7t3m(){ return _sharedPrefs.getString(D7T3M,"00"); }
public void setD7t3m(String text){
_prefsEditor.putString(D7T3M, text);
_prefsEditor.commit();
}
public String getD7t3rt(){
return _sharedPrefs.getString(D7T3RT,"00");
}
public void setD7t3rt(String text){
_prefsEditor.putString(D7T3RT, text);
_prefsEditor.commit();
}
//DAY 7 T4
public String getD7t4h(){
return _sharedPrefs.getString(D7T4H,"00");
}
public void setD7t4h(String text){
_prefsEditor.putString(D7T4H, text);
_prefsEditor.commit();
}
public String getD7t4m(){ return _sharedPrefs.getString(D7T4M,"00"); }
public void setD7t4m(String text){
_prefsEditor.putString(D7T4M, text);
_prefsEditor.commit();
}
public String getD7t4rt(){
return _sharedPrefs.getString(D7T4RT,"00");
}
public void setD7t4rt(String text){
_prefsEditor.putString(D7T4RT, text);
_prefsEditor.commit();
}
}
3.-クラスのインスタンスが呼び出され_appPreferences:
_appPrefs = new AppPreferences(getContext().getApplicationContext());
4-Iは、このような何かをしたいと思います:
public void syncData(){
for(int i=1;i <= 7;i++){
for(int j = 1;j <=4;j++){
String func ="getD"+i+"t"+j+"h";
String temp = _appPrefs.func;
}
}
}
これはさえ可能ですか?私はそのリフレクションと呼んでいると思いますが、リフレクションで新しくなって以来、私は良い事例を見つけることができます。私の英語は申し訳ありませんが、私は英語の母国語ではありません。前もって感謝します。
はアプローチが必要ということですか?なぜマップやリストを使用せず、やりたいことを簡単にする適切なロジックを追加するのですか? – Rafal
'HashMap'の何が問題ですか? –
ハッシュマップ.... –