해쉬맵과 리스트뷰 그리고 인텐트를 이용한 부분을 공부중인데...
소스를 올리도록하겠습니다.
package kr.abc;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.SimpleAdapter;
public class test04 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView lv = (ListView)findViewById(R.id.listview);
String val = "a1&a2&a3&a4,b1&b2&b3&b4,c1&c2&c3&c4,d1&d2&d3&d4";
String [] val1 = val.split(",");
String[] from = new String[]{"rowid","t_title","t_name","t_addr"};
int[] to = new int[]{R.id.item1,R.id.item2,R.id.item3,R.id.item4};
List<HashMap<String,String>> fillMaps = new ArrayList<HashMap<String,String>>();
for(int i = 0 ; i < val1.length ;i++)
{
String [] val3 = val1[i].toString().split("&");
HashMap<String,String> map = new HashMap<String,String>();
map.put("rowid",""+val3[0].toString());
map.put("t_title","ttitle_"+val3[1].toString());
map.put("t_name","name_"+val3[2].toString());
map.put("t_addr","addr_"+val3[3].toString());
fillMaps.add(map);
}
SimpleAdapter adapter = new SimpleAdapter(this,fillMaps,R.layout.grid_item,from,to);
lv.setAdapter(adapter);
}
//일반 리스트 뷰에서 는 아래와 같이 하면 다음페이지로 잘 넘어갑니다.
//그런데 제가 만든 위의 소스로 하면 아예 인식을 하지 않습니다.
public void onListItemClick(ListView l, View v, int position, long id) {
Intent intent = new Intent(test04.this,test04_receive.class);
intent.putExtra("val", "aaaa");
startActivity(intent);
}
}
intent 로 map.put("t_name","name_"+val3[2].toString()); 값을 다음페이지에 전달하고 싶은데....
어떻게 해야할지요
답변 부탁드립니다.
감사합니다.~



