2014-07-22 3 views
0

내 기본 설정에는 10 개의 휴대 전화 번호 목록이 있습니다. 각 기본 설정 키는 sms1, sms2, sms3 등입니다.환경 설정에서 Android Java 배열

내 목표는 보낼 주소가 여러 개인 SMS 또는 메시지를 만드는 것입니다. 이렇게하려면 sms에 대한 to : 문자열이 쉼표로 구분 된 sms1, sms2 등이되어야합니다.

sms : filed에 사용될 PhoneNumber Array를 빌드하는 루프를 만들려고합니다. 이렇게하려면 루프 환경 설정에서 각 SMS 키를 통해 가서 배열을 빌드해야합니다. 꽤 바로 그것을 받고 있지 않다 :

SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences(mContext); 

    String[] PhoneNumber = new String[12]; 
    for(int smscount = 1; smscount < 11; smscount ++){ 
     String RescueSMS = "sms" + smscount; 

      PhoneNumber[smscount] = RescueSMS + ","; 
      Log.w("MESSAGE", "SMS Array is " + PhoneNumber); 
     } 

위의 코드는 실제로 아무것도 메모리 할당 문자열을지지 않습니다 당기고 있습니다. 환경 설정에서 "얻다"는 것은 너무 엉망이어서 제거해야했습니다. 어떤 아이디어 있니?

답변

0

된 SharedPreferences에 데이터를 저장하려면 :

SharedPreferences shared = getSharedPreferences(PREF_NAME, MODE_PRIVATE); 
SharedPreferences.Editor editor = shared.edit(); 
editor.putString(sms1, number1); 
editor.putString(sms2, number2); 

...... 

editor.putString(sms10, number10); 
editor.commit();// commit is important here. 

그것을 검색하려면, 당신은 아마도 같은 시도 할 수 있습니다 :

String[] PhoneNumber = new String[12]; 
    for(int smscount = 1; smscount < 11; smscount ++){ 
      PhoneNumber[smscount-1] = (shared.getString("sms" + smscount, "DEFAULT NUMBER HERE")); 
      Log.w("MESSAGE", "SMS Array is " + PhoneNumber); 
      Log.w("MESSAGE", "SMS Array is " + Arrays.toString(PhoneNumber)); // This will give comma separated string by default. 

     } 

참고 :

PhoneNumber[0] = (shared.getString("sms1", "DEFAULT NUMBER HERE")); 
PhoneNumber[1] = (shared.getString("sms2", "DEFAULT NUMBER HERE")); 
...... 
PhoneNumber[9] = (shared.getString("sms10", "DEFAULT NUMBER HERE")); 
: 위의 루프와 유사 할 것
+0

꽃과 초콜릿을 사줄 수 있다면 ..... –

+0

@Cybergei : 정말 고마워요. 지금 당장 당신은 나 upvoting하여 가리 킵니다 :) –

관련 문제