안드로이드 intent를 이용하여, 두 개의 액티비티 간에 데이터 전송을 하고 싶습니다.


인텐트 기능을 이용하여 간단한 물건 계산기 어플을 만들고 있습니다

이 계산기는 총 2개의 액티비티가 사용되며, 액티비티1에서 물건 2개의 수량을 버튼(물건 당 1~4까지의 4개의 버튼)으로 입력하고, RESULT버튼을 누르면 액티비티2로 수량이 넘어갑니다.

액티비티2에서는 물건 2개의 가격을 그냥 EditText에 입력받고, CALCULATE 버튼을 누르면 액티비티1에서 받아온 수량을 가격과 곱하여 가격의 총합을 구해줍니다. 그리고 RETURN버튼을 누르면 액티비티1로 총합이 넘어가고 종료됩니다.

액티비티1로 돌아와서 액티비티2에서 받아온 총합을 출력하는 방식의 프로그램입니다..


이 프로그램을 구동하기 위해 startActivityForResult(), onActivityResult()를 사용하였는데, 잘 구동되지 않아서 여기에 질문드립니다 ㅠㅠ..

액티비티1에서 버튼을 눌러 수량을 입력받는것까진 잘 되는데, RESULT 버튼만 누르면 어플이 꺼집니다. 제가 어떤 점을 실수했는지 조언해주시면 정말 감사드리겠습니다.

(해결 후 소스 삭제) -> 인텐트 문제가 아닌, 엑티비티에서 변수를 선언하는 위치가 잘못되어 오류가 발생했던 것이였습니다..ㅠㅠ 단순한 문제였네요...

  • 2017년 10월 02일에 작성됨

조회수 178


1 답변


좋아요
0
싫어요
채택취소하기

로그가 없어 정확한 문제 파악은 어렵지만

Activity_2 에서 종료 시 호출하는 코드를

Intent outIntent = new Intent();
outIntent.putExtra("Totals", String.valueOf(totals));
setResult(RESULT_OK,outIntent);
finish();

로 수정해보세요

  • 2017년 10월 10일에 작성됨

  • 인텐트 문제가 아닌 엑티비티에서 변수를 선언하는 위치가 잘못되어 오류가 발생했던 것이였습니다..ㅠㅠ 저의 초보적인 실수였네요 답변 감사드립니다!!    yj   2017.10.21 01:31     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close