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

startActivityForResult 사용하는 방법 질문드립니다.도움 부탁드립니다 ㅠㅜ [closed]

0 추천
리스트뷰에서 만든 버튼을 클릭했을경우 새로 B 화면을 이동했다가
startActivityForResult 함수를 사용해서  A화면으로 돌아와서 B화면에서 만들어낸
데이터를 사용하고 싶습니다.
근데 아답터만든 화면 버튼이 있어서 getView() 안에서 호출하고 있는데요.

즉 A -> A-1 -> B -> A 이런식으로 데이터를 저장하려고 하는데요,
그러면 getView의 버튼 이벤트 안에서 startActivityForResult 함수를 호출하고
A 자바에서 onActivityResult 를 구현하는게 맞는건가요?

A.java
@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       
        super.onActivityResult(requestCode, resultCode, data);

        if ( resultCode != RESULT_OK ) return;
       
        switch (requestCode) {
        case Constant.finishPicture:
           
            Toast.makeText(this,data.getStringExtra("name"), Toast.LENGTH_SHORT).show();
           
            break;
      
       
        default:
            break;
        }
    }
   
 A-1.java
 
 @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        // Tag를 이용하여 Data를 가져옵니다.
        Item clickItem = (Item)v.getTag();
       
        switch (v.getId()){
            case R.id.btnPicture:
                Toast.makeText(mcontext, clickItem.getchkName(), Toast.LENGTH_SHORT).show();
               
                Intent intent = new Intent(mcontext, AllocListCheckPicture.class);

                if(intent != null){
                    intent.putExtra("div", Code.ADD_PRODUCT);
                    ((Activity) mcontext).startActivityForResult(intent, Constant.finishPicture);
              
                }
               
                break;
        }
    }
   
    B.java
   
    public class AllocListCheckPicture extends ManagedActivity { //implements OnScrollListener {
  
    public static final String NAME = "name";
   
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.w_alloclist);
       
        Intent i = new Intent();

        i.putExtra(NAME, "dddddd");

        setResult(RESULT_OK, i);

        finish();
     }
   
}

이렇게 하면 될거같은데 화면이 자꾸 꺼져서요.
자꾸 질문 드려서 죄송합니다 ㅠㅜ
부디 고수님들의 조언 부탁드릴게요 ㅠㅜ
질문을 종료한 이유: 자체해결했습니다.하지만 너무나 감사합니다.이사이트를 안것만으로도 너무 안심되고 기쁩니다 ㅠㅜ
주숙 (260 포인트) 님이 2016년 2월 4일 질문
주숙님이 2016년 2월 4일 closed
...