[Android Warning] Do not concatenate text displayed with setText. Use resource string with placeholders.

thevlakk·2022년 4월 5일
0

Oh My Android

목록 보기
14/17
post-thumbnail

'표시된 텍스트를 설정된 텍스트와 연결하지 마십시오. 자리 표시자와 함께 리소스 문자열 사용'

코딩하다가 파일이름을 변수로 담아야 할 상황이 생겼다. 파일이름의 형식은 [이름][날짜][버전].zip 이런식 이었는데

코틀린은 문자열 안에 $로 간단히 변수를 넣을 수 있어 다음과 같이 코딩했었다.

val fileName = "${DEVICE_NAME}_currentDay_${VERSION}".plus(".zip")

뒤에 plus메서드도 문자열 추가하는 것 인데 혼자 몬생겨서 뒤로 저리 빼놨다.

암튼 이런식으로 문자열을 생성하면 제목과 같은 warning이 발생.

해결

string파일에 문자열 서식을 추가하여 해당 string값을 불러와 사용한다.

fileName = getString(R.string.file_name, DEVICE_NAME, currentDay, VERSION)

getString의 맨 앞에 해당 string의 id값을 적어주면 뒤는 자동으로 지정된 서식에 맞게 적용된다.

profile
Android Developer

0개의 댓글