Notice
Recent Posts
Recent Comments
Link
투케이2K
332. (TWOK/ERROR) [Android] android.text.Layout.getLineTop(int) on a null object reference 본문
투케이2K 에러관리
332. (TWOK/ERROR) [Android] android.text.Layout.getLineTop(int) on a null object reference
투케이2K 2025. 10. 2. 21:02728x90
반응형
[환경 설정 및 설명]
프로그램 : Android / 안드로이드
설 명 : [Android] android.text.Layout.getLineTop(int) on a null object reference
[설 명]
--------------------------------------------------------------------------
[개발 및 테스트 환경]
--------------------------------------------------------------------------
- 제목 : [Android] android.text.Layout.getLineTop(int) on a null object reference
- 테스트 환경 : 삼성 갤럭시 스마트폰 / 안드로이드 / Android
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[에러 원인]
--------------------------------------------------------------------------
1. 안드로이드에서 텍스트 뷰 ( TextView ) 자동 스크롤 하단 이동 기능 수행 시 컴포넌트 Visibility 가
View.GONE 으로 설정 되어 있어 textView.getLayout().getLineTop 호출 값을 확인 하지 못하는 이슈
2. 에러 발생 전체 로그 :
W/System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.text.Layout.getLineTop(int)' on a null object reference
W/System.err: at com.example.javaproject.C_Activity.A_Test_Aws_WebRTC_Webview.scrollBottom(A_Test_Aws_WebRTC_Webview.java:1617)
W/System.err: at com.example.javaproject.C_Activity.A_Test_Aws_WebRTC_Webview.access$000(A_Test_Aws_WebRTC_Webview.java:63)
W/System.err: at com.example.javaproject.C_Activity.A_Test_Aws_WebRTC_Webview$AndroidBridge$5.run(A_Test_Aws_WebRTC_Webview.java:1387)
W/System.err: at android.os.Handler.handleCallback(Handler.java:959)
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[해결 방법]
--------------------------------------------------------------------------
1. 안드로이드 하단 스크롤 이동 textView.getLayout().getLineTop() 함수 호출 시 사전 컴포넌트 Visibility 상태 점검 후 수행하도록 로직 변경
2. 간단 소스 예시 (Java) :
private void scrollBottom(TextView textView) {
try {
// -------------------------------------------
// Check TextView Visibility
// -------------------------------------------
if (textView != null && textView.getVisibility() == View.VISIBLE){
int lineTop = textView.getLayout().getLineTop(textView.getLineCount()) ;
int scrollY = lineTop - textView.getHeight();
if (scrollY > 0) {
textView.scrollTo(0, scrollY);
} else {
textView.scrollTo(0, 0);
}
}
}
catch (Exception e){
e.printStackTrace();
}
}
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[참고 사이트]
--------------------------------------------------------------------------
(AndroidStudio/android/java) 텍스트 뷰 (TextView) 에 자동 스크롤 적용 실시 (로그 기록 사용)
https://blog.naver.com/kkh0977/222257090989?trackingCode=blog_bloghome_searchlist
(AndroidStudio/android/java) scrollbars , setMovementMethod 사용해 텍스트 뷰 (TextView) 스크롤 만들기
https://blog.naver.com/kkh0977/222320075414?trackingCode=blog_bloghome_searchlist
--------------------------------------------------------------------------
728x90
반응형
'투케이2K 에러관리' 카테고리의 다른 글
Comments
