728x90
보통 캔버스에 그리는 것이 아닌 뷰그룹을 상속받아 내부에 뷰를 사용할때는
생성자에서 xml을 인플레이트 시키고, 이후 인플레이트 된 뷰들을 찾아 사용할때, 시점을 onCreate()에서 초기화 하여 사용했었는데, 더 정확한 시점이 있었다.
public CircleProgressView(Context context) {
super(context);
initView(); //inflate }
@Override
protected void onFinishInflate() {
super.onFinishInflate();
mIvStar = findViewById(R.id.star);
mIvRect = findViewById(R.id.rect);
mIvCircle = findViewById(R.id.circle);
}
onFinishInflate()를 오버라이드하면 된다. 인플래이트가 끝난 시점에 불리는 콜백함수 이다.
보통은 initView()에서 인플레이트 한 뷰를 리턴하여 멤버변수를 두고 onFinishInflate시점에서 멤버변수를 통해 findViewById하여 사용하고 있다.
728x90
'Android > Development Tips' 카테고리의 다른 글
YUV420_8888 to NV21 (0) | 2019.04.16 |
---|---|
중첩 프래그먼트와 제어 및 헤드리스 프래그먼트 (0) | 2018.12.13 |
커스텀뷰와 merge 태그 (0) | 2018.12.12 |
안드로이드 패딩과 마진 (0) | 2018.12.12 |
액티비티의 백스택, taskAffinity (0) | 2018.12.12 |