Android 개발 Tip.
- Activity Communication
Activity <-> Activity 변수 접근하기
액티비티 내 변수를
다른 액티비티에서 사용하는 방법
Activity에서 다른 Activity와 통신을 해야 하는 경우가 있는데
다른 클래스에서 객체를 생성하는 방법대로 하면
객체 생성도 되고 코드 오류는 안 나지만
실행을 시켜보면 오류가 난다.
Activity에서 다른 Activity의 변수에 접근하는 방법을 알아보자.
1. Context 변수 생성
가져오고 싶은 Activity에 Context 변수를 만들어 준다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
public class MainActivity extends AppCompatActivity {
public static Context context_main; // context 변수 선언
public int var; // 다른 Activity에서 접근할 변수
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
context_main = this; // onCreate에서 this 할당
}
}
|
cs |
2. 다른 Activity에서 변수 접근
호출하고 싶은 Activity에서 해당 변수에 접근한다.
접근하는 방법은 다음과 같다.
((접근할 액티비티 이름)접근할 액티비티 이름.context변수명).접근할 변수명
예시
1
|
int var2 = ((MainActivity)MainActivity.context_main).var;
|
cs |
클래스 객체를 만드는 방식처럼 하면 오류가 난다.
context를 만들어서 사용하자.
'Android 개발 > android :: Tip' 카테고리의 다른 글
[안드로이드 액티비티] 화면 고정 방법 / 화면 회전 시 activity 초기화 현상 막기 (4) | 2019.09.20 |
---|---|
[안드로이드 Toolbar] CollapsingToolbarLayout 스크롤시 툴바 가리기 속성 (0) | 2019.09.20 |
[안드로이드 Toolbar] CollapsingToolbarLayout 에 외부 폰트(font) 적용하기 (2) | 2019.09.19 |
[안드로이드 View] NavigationView 의 menu - item 의 폰트(font) 변경하기 (0) | 2019.09.19 |
[안드로이드 Toolbar] 툴바 font(폰트) 간단히 적용하는 방법 (0) | 2019.09.18 |
[안드로이드 Font] 원하는 폰트를 받아서 폰트 직접 적용하기 (0) | 2019.09.18 |
[안드로이드 Inflate] 현재 layout에 다른 layout 넣기 - Inflater 간단 사용법 (0) | 2019.09.18 |
[안드로이드 프래그먼트] Activity <-> Fragment 각각에서 각각의 함수/변수 접근 (1) | 2019.09.16 |
댓글