intent 로 String 값 받아올 떄 널값..만 들어옵니다.
조회수 826회
//Second.class
f =fstE.getText().toString(); l = lstE.getText().toString();
Intent i = new Intent(Second.this, T1_text.class);
i.putExtra("lastName",l);
i.putExtra("firstName",f);
startActivity();
//T1_text.class
Intent i2 = getIntent();
F = i1.getStringExtra("firstName");
L = i1.getStringExtra("lastName");요
이렇게 작성했습니다. 인텐트로 담아올 시에 null값으로 처리되고, Second 에서 putExtra(fstE.getText().toString();) 이렇게 담아올 경우에는 제대로 실행됩니다.
제가 원하는 건 객체에 담아 여러 액티비티에 활용하는 건데 객체에 담기지가 않습니다 ㅠㅠㅠㅠㅠㅠ 전역변수 설정해보라 그래서
Application.class
public String l; String f;
public String getL(){
return l;
}
public void setL(String l){
this.l =l;
}
이렇게 했으나 같은상황입니다. ㅠ 도와주세요 ㅠㅠ
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
public class Name { private static Name INSTANCE; private String mFirstName; private String mLastName; public static Name get() { if (INSTANCE== null) { synchronized (Name.class) { if (INSTANCE== null) { INSTANCE = new Name(); } } } return INSTANCE; } public void setFirstName(String firstName) { mFirstName = firstName; } public String getFirstName() { return mFirstName; } /* LastName도 만들어주세요.*/ }
댓글로 작성했다시피 getIntent 로 받아온 변수 이름과 getStringExtra 를 사용하는 변수 이름이 다른걸 확인해보세요.
그리고 두번째...
제가 원하는 건 객체에 담아 여러 액티비티에 활용하는 건데 객체에 담기지가 않습니다 ㅠㅠㅠㅠㅠㅠ 전역변수 설정해보라 그래서
전역변수 설정해보라고 하는게 아마 싱글톤 패턴을 사용하라고 한게 아닐까 싶습니다. 위와 같은 자바 파일을 생성하시고
// 원하는 곳에서 저장 Name.get().setFirstName(fstE.getText().toString()); // 원하는 곳에서 사용 String firstName = Name.get().getFirstName();
이렇게 사용해 보시기 바랍니다.
댓글 입력