서비스 Bundle b = new Bundle(); b.putStringArray("1", String 배열 1); b.putStringArray("2", String 배열 2);
액티비티 Bundle b = //생략 Iterator<String> it = b.keySet().iterator(); String key = null; ArrayList<String[]> list = new ArrayList<String[]>(); while (it.hasNext()) { key = it.next(); list.add(b.getStringArray(key)); }
테스트해보니 서비스에서 넣은 순서대로 나오진 않는군요. Iterator의 특징이라 어쩔 수 없구요. 순서가 중요하시면 다시 정렬하시구요.
===================== 수정 ===================== 정렬 문제가 있어서 수정했습니다.
서비스 String[][] data = //생략 Bundle b = new Bundle(); for (int i = 0; i < data.length; i++) { b.putStringArray(String.format("%04d", i), data[i]); // 정렬을 위해서 key값의 자리수를 4자리로 맞춤 }
액티비티 Bundle b = //생략 Iterator<String> it = b.keySet().iterator(); String key = null; ArrayList<String> keyList = new ArrayList<String>(); while (it.hasNext()) { key = it.next(); keyList.add(key); }
Collections.sort(keyList); // key 값을 오름차순으로 정렬
ArrayList<String[]> list = new ArrayList<String[]>(); for (int i = 0; i < keyList.size() ; i++) { list.add(b.getStringArray(keyList.get(i))); }
Bundle을 사용하면 되지 않을까 합니다.
서비스
Bundle b = new Bundle();
b.putStringArray("1", String 배열 1);
b.putStringArray("2", String 배열 2);
액티비티
Bundle b = //생략
Iterator<String> it = b.keySet().iterator();
String key = null;
ArrayList<String[]> list = new ArrayList<String[]>();
while (it.hasNext()) {
key = it.next();
list.add(b.getStringArray(key));
}
테스트해보니 서비스에서 넣은 순서대로 나오진 않는군요.
Iterator의 특징이라 어쩔 수 없구요.
순서가 중요하시면 다시 정렬하시구요.
===================== 수정 =====================
정렬 문제가 있어서 수정했습니다.
서비스
String[][] data = //생략
Bundle b = new Bundle();
for (int i = 0; i < data.length; i++) {
b.putStringArray(String.format("%04d", i), data[i]); // 정렬을 위해서 key값의 자리수를 4자리로 맞춤
}
액티비티
Bundle b = //생략
Iterator<String> it = b.keySet().iterator();
String key = null;
ArrayList<String> keyList = new ArrayList<String>();
while (it.hasNext()) {
key = it.next();
keyList.add(key);
}
Collections.sort(keyList); // key 값을 오름차순으로 정렬
ArrayList<String[]> list = new ArrayList<String[]>();
for (int i = 0; i < keyList.size() ; i++) {
list.add(b.getStringArray(keyList.get(i)));
}