< 개발 환경 > < 프로젝트 적용 > |
안드로이드/Android Context를 이용해 Activity에 있는 메서드 호출 하기~!
CustomView나 다른 클래스에서 Activity를 호출하는 방법입니다. 원리는 Activity에서 CustomView를 생성할 때 생성자로 Context를 넘겨 줌으로써 Context를 이용한 Activity 메서드 호출 할 수 있게 해주는 방식 입니다. 단 메서드는 public 메서드만 접근 할 수 있습니다.
((Activity명) Context).호출할 Activity 메서드() |
EX)
((MainActivity) mContext).getCountSum(); |
MainActivity.java
package arabiannight.tistroy.com.contextclass;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
CustomTextView cv = new CustomTextView(this);
cv.setText("sum = " + cv.getActivityCountSum());
cv.setTextSize(50);
setContentView(cv);
}
public int getCountSum() {
return 10 + 30;
}
}
package arabiannight.tistroy.com.contextclass;
import android.content.Context;
import android.widget.TextView;
public class CustomTextView extends TextView {
private Context mContext = null;
public CustomTextView(Context context) {
super(context);
this.mContext = context;
}
public int getActivityCountSum() {
return ((MainActivity) mContext).getCountSum();
}
}
파일첨부 :
스크린샷 :
'Android > Activity' 카테고리의 다른 글
| 안드로이드/Android Activity onConfigurationChanged() 메서드 사용시 주의사항 ~! (0) | 2013.02.02 |
|---|---|
| 안드로이드/Android 필수암기! Activity가 제공하는 필수 암기 메서드() ! (0) | 2013.02.02 |
| 안드로이드/Android Acitivity 실행시 화면 모드 얻어 오기 ~! (가로 / 세로) (2) | 2013.01.22 |
| 안드로이드/Android 아이스크림 샌드위치(4.0) 이상 버전 화면 전환시 Activity 재생성 방지 속성 ~! (3) | 2013.01.19 |
| 안드로이드/Android Activity onWindowFocusChanged 메서드란? (2) | 2013.01.16 |
TestContextClass.zip