안녕하세요~
인텐트를 통한 값전달에 있어서 제데로 넘어가지 않아서 어디가 문제인건지 알고 싶어서 글을 올렸습니다.
현재 아래는 aaa클래스이며 인텐트를 통해서 bbb로 보냈을때 텍스트뷰에 잘 나옵니다.
그런데 bbb에서 받은것을 다시 ccc에 있는 텍스트뷰에 찍어주려고 하는데.. 어디가 오류인지 감을못잡고 있네요..
아래의 소스중에서 어디가 문제이길래, bbb의 텍스트뷰에서는 잘 나오던것이 ccc에서는 잘 안나오는지 모르겠습니다.
소스가 조금 넘치는 부분은, 아래의 댓글부분에 이어서 달아보겠습니다.
처음에 aaa-> bbb로 인텐트를 통해서 값을 전달합니다.
ArrayList<Integer> mSeat = new ArrayList<>();
Button = (Button) findViewById(R.id.SelectionAccess);
Button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getApplicationContext(), aaa.class);
intent.putExtra("Seat_Total_Mount", Total_Amount); .
intent.putExtra("Adult_number", mAdult_Count);
intent.putExtra("School_number", mSchool_Count);
intent.putExtra("Senior_number", mSenior_Count);
int idx=0;
for (int i=0; i < mSeat.size (); i++) {
TextView tv = (TextView)findViewById(mSeat.get(i));
if ((int)tv.getTag () == SEAT_SELECTED){
intent.putExtra ("seat" + idx, tv.getText().toString());
idx++;
}
}
startActivity(intent);
}
});
그리고 bbb에서는 아래와 같이 받아서, 텍스트뷰에 잘 찍힘을 확인을 했습니다.
아래의 어레이리스트는 위쪽에 따로 선언
ArrayList<String> selectedSeatNameList = new ArrayList<String>();
TextView txt_seat;
int adultNumber = getIntent().getIntExtra("Adult_number", 0);
int schoolNumber = getIntent().getIntExtra("School_number", 0);
int seniorNumber = getIntent().getIntExtra("Senior_number", 0);
int totalNumber = adultNumber + schoolNumber + seniorNumber ;
온크리트 아래쪽에 아래와 같이 선언
for(int i = 0; i < totalNumber; i++){
selectedSeatNameList.add(getIntent().getStringExtra("seat" + i));
}
txt_seat = (TextView)findViewById(R.id.Seat_Text);
String seats = "";
for(int i=0; i<selectedSeatNameList.size ();i++) {
seats += selectedSeatNameList.get (i);
if (i < selectedSeatNameList.size () - 1){
seats += ", ";
}
}
txt_seat.setText(seats);