본문 바로가기
코딩

안드로이드 코틀린 - 텍스트 변수에 다수의 텍스트(문구) 표기하기

by 젊투 2021. 10. 31.

Layout (activity_main.xml)에서 생성한 TextView(글을 나타낼때 사용함)에 간혹 문구를 조건별로 변경하거나 다수의 문구를 변경할 필요가 있습니다.

 

1. 먼저 Layout (activity_main.xml)에서 TextView를 생성합니다. (id는 Textview_1 입니다)

(본 코딩은 kotlin-android-extensions를 지원할 당시 작성한 내용입니다. 신규 버전의 경우 안드로이드 코틀린 - findViewById를 참고해 주세요)

 

 

2.MainActivity.kt에서 내부 변수 TList_QSRT (변수 이름) : MutableListOf<String> (스트링-문구 타입의 그룹)을 생성합니다.

MutableListOf는 여러개의 요소들을 읽거나 쓸 수 있는 목록(묶음)입니다.

 

해당 MutableList (TList_QSRT)에 초록생 문구와 같이 필요한 만큼의 문구를 기입합니다.

("문구1",

"문구2",

"문구마지막")

이러한 문구를 표기하기 위해서는 여러가지 방법이 있습니다.

 

1.특정 번호를 지정하여 원하는 순서의 문장을 나타내기

이 경우 TextView_1의 Text(문구) : Textview_1.text에 1번 (0, 1) 그러니 2번째 "Could you move the meeting forward by 30 minutes please...." 문장이 나타납니다.

 

 

2.랜덤 (임의의) 순서로 나타내는 경우 fun (function)을 사용하면 됩니다.

Onejhym의 경우 특정 숫자 (int정수)가 기입되었을시 랜덤 문구를 표기하도록 만들었습니다. (예: printTexts(2) = Textview_1 변수의 텍스트는 TList_QSRT의 랜덤 숫자에 해당하는 문장을 표기한다' 라는 의미임)

 

a. fun printTexts(int: Int) 생성

 

>>> val randomQSRT : Int = (0 until (TList_QSRT.size)).random()

이는 fun내 변수 randomQSRT : Int(정수형 타입)를 생성. 해당 변수(randomQSRT)는 0번부터 위에서 반든 TList_QSRT 사이즈 중 랜덤임을 의미합니다.

 

fun (function) printTexts는 숫자를 입력받고 랜덤한 문장을 Textview_1에 표기 하도록 만들어 졌습니다.

 

>>> 2 -> Textview_1.text = TList_QSRT[randomQSRT]

 

이는 입력된 숫자가 2인  (printTexts(2)) 경우 layout (activity_main.xml)에서 생성한 Textview_1의 텍스트는 랜덤으로 생성한 숫자 randomQSRT번째 문장을 표기한다는 의미입니다.

 

-이상입니다-

댓글