마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

그리드뷰에 있는 이미지와 텍스트를 인텐트로 다른 액티비티로 넘기려고 합니다.

0 추천
public class MyAdapter extends BaseAdapter{
 private final List<Item> mItems = new ArrayList<Item>();
 private LayoutInflater mInflater;
 
 public MyAdapter(Context context){
  mInflater = LayoutInflater.from(context);
  
  mItems.add(new Item("2015졸업1",       R.drawable.ccse));
        mItems.add(new Item("2015졸업2",   R.drawable.cse));
        mItems.add(new Item("안드로이드", R.drawable.ic_launcher));

 }

 @Override
 public int getCount() {
  // TODO Auto-generated method stub
  return mItems.size();
 }

 @Override
 public Item getItem(int position) {
  // TODO Auto-generated method stub
  return mItems.get(position);
 }

 @Override
 public long getItemId(int position) {
  // TODO Auto-generated method stub
  return mItems.get(position).drawableId;
 }

 @Override
 public View getView(int position, View convertView, ViewGroup parent) {
  // TODO Auto-generated method stub
  View v = convertView;
        ImageView picture;
        TextView name;

        if (v == null) {
            v = mInflater.inflate(R.layout.grid_item, parent, false);
            v.setTag(R.id.picture, v.findViewById(R.id.picture));
            v.setTag(R.id.text, v.findViewById(R.id.text));
        }

        picture = (ImageView) v.getTag(R.id.picture);
        name = (TextView) v.getTag(R.id.text);

        Item item = getItem(position);

        picture.setImageResource(item.drawableId);
        name.setText(item.name);

  return v;
 }
 
  private static class Item {
         public final String name;
         public final int drawableId;

         Item(String name, int drawableId) {
             this.name = name;
             this.drawableId = drawableId;
         }
     }
}

->Adapter

 

gridview.setAdapter(new MyAdapter(this));

gridview.setOnitemClickListener(new OnItemClickListener(){

public void onItemClick(AdapterView<?> parent, View view, int position, long id){

Intent photodetail = new Intent(gridview.this, photodatail.class);

startActivity(photodetail);

}}

->gridview

 

 

 

그리드뷰를 squareImage를 사용해서 글과 이미지가 같이 뜨도록 구현하였습니다.

그리드뷰 adapter에 arraylist를 텍스트와 이미지가 들어가도록 만들었구요!

그리드뷰에 이미지하나를 클릭하면 다른 인텐트(이미지뷰와 텍스트뷰가 있는 액티비티)로 넘겨서 그리드뷰에있던

사진과 텍스트를 똑같이 넣어서 띄우려고 하는데 어떻게 해야할까요?

값을 어떻게 받아서 넘겨야할지 모르겠어요..

 

 

뱅bang (260 포인트) 님이 2015년 5월 1일 질문

1개의 답변

0 추천
click event 로 해당 image 와 text 을 넘기려는 것 이라면

 

1. 먼저 전달하려는 데이터의 형태가 res 내에 존재하는 것이라면 res id 를 전달하면 되고 그게 아니라면은 이미지의 경로를 전달하면 됩니다.

2. 전달하는 방법은 intent 을 호출할 때 putExtra 로 데이터를 전달 하면 됩니다.

http://eraserdev.tistory.com/5

이해가 안된다면, 이런 내용들은 아주 기초 부분에 속하는 것이니 책을 사서 좀 읽으시면 되겠습니다.
aucd29 (218,390 포인트) 님이 2015년 5월 4일 답변
...