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

커스텀어댑터에서 startActivityForResult 호출방법 여쭤봅니다..

0 추천
//   --------    mainActivity ---------

// 액티비티 값 받기
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) { // 액티비티가 정상적으로 종료되었을 경우

            Log.i("MainActivity","onActivity result = : ");

            if (requestCode == 1) { // requestCode==1 로 호출한 경우에만 처리합니다.
                if(data.getStringExtra("re_addClothes").equals("pic_ok")) {
                    reset_wardrobe();
                }
            }
        }
    }

 

//  Add Activity
Intent intent = getIntent();
intent.putExtra("re_addClothes", "pic_ok");
setResult(RESULT_OK, intent);
finish();

 

// --------  custom adapter

public class CustomAdapter_listview_wardrobe extends BaseAdapter implements OnClickListener {

public CustomAdapter_listview_wardrobe(Activity context) {    // startActivityForResult 함수 쓰려고 액티비티로 상속받음
        super();
        mContext = context;
        mUserData = new ArrayList<Listview_item_wardrobe>();
    }

v.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {

                Log.i("MainActivity", "Long click : " + viewHolder.clothes_name.getText().toString());
                Intent intent_add_wardrobe = new Intent(mContext,Add_clothes.class);
                intent_add_wardrobe.putExtra("name", viewHolder.clothes_name.getText().toString());
                intent_add_wardrobe.putExtra("kind", "mod");
                intent_add_wardrobe.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
               // mContext.startActivity(intent_add_wardrobe);
                mContext.startActivityForResult(intent_add_wardrobe,1);   // 인텐트result값 전달

                return true;
            }
        });
}

 

 

 

리스트뷰의 각 항목마다 이벤트를 줘서, 그 항목을 롱클릭 했을때 

인텐트를 호출하면서 그 인텐트가 종료될시, Result를 뿌리고, 받고싶은데 

 

 

main액티비티의 다른함수에서 이 인텐트 호출시에는 onActivityResult가 잘 작동하는데,

커스텀 어댑터에서 호출한 onActivityResult가 작동이 안됩니다.

 

도움 부탁드려요

쓰구리 (220 포인트) 님이 2016년 4월 12일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...