화면 이동에 관한 질문입니다.

 

구조는

 

텍스트뷰를 감싸고  있는 스크롤뷰입니다.

 

body = (TextView)findViewById(R.id.body);

sv = (ScrollView)findViewById(R.id.scroll);

 

초기화는 이렇게 했습니다.

 

string str = 대량의 문자열

 

body.setText(stf);

 

이렇게 하고

 

init(); 함수를 수행합니다.

 

private void init(){
  sv.smoothScrollTo(0, 2000);

}

이런 단순한 구조입니다.

 

제 예상으로는

 

텍스트뷰에 문자열이 세팅되고

 

2000 으로 위치가 이동이 되야하는데

 

안됩니다. 혹시나 해서 sv.getHeight()를 수행해 봤으나 0을 뱉어냅니다.

 

똑같이 다른 이벤트를 구현한곳에

sv.smoothScrollTo(0, 2000);

를 실행해본 결과 이동이 제대로 됩니다...

 

제 예상으로는 init 함수가 수행될때 sv 객체에 제대로 된 값이 할당이 안되는것같은데요..

 

초기 수행시에 지정된 위치로 이동하려면 어떻게 해야할까요?

 

조언 부탁드립니다.