이번 시간에는 야구 게임 랜덤 숫자 생성하는 방법을 알아보겠습니다.
이전 포스팅은 아래 링크를 들어가시면 됩니다.
2022.08.29 - [안드로이드] - [안드로이드 코틀린] 야구 게임 만드는 방법 part1 - 화면 구성
- 설명 -
1. randomNumber()
랜덤 숫자 생성 함수
2. val set: HashSet<Int> = HashSet()
중복 방지 위해서 HashSet에 담는다.
3. Random.nextInt(8) + 1
1 ~ 9 까지 랜덤 숫자 생성
4. list.shuffle()
랜덤 숫자 위치 섞기
class MainActivity : AppCompatActivity() {
lateinit var requestText: EditText //입력 텍스트
lateinit var responseText: TextView //정답 체크
lateinit var resultText: TextView //결과 모음
lateinit var lifeCountText: TextView // 기회 횟수
//랜덤 숫자 배열
val comNumbers: Array<Int?> = arrayOfNulls<Int>(3)
//사용자 입력 배열
val userNumbers: Array<Int?> = arrayOfNulls<Int>(3)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//입력된 숫자가 보여지는 텍스트
requestText = findViewById(R.id.request_text)
//정답이 맞는지 보여주는 텍스트
responseText = findViewById(R.id.response_text)
//기회 횟수
lifeCountText = findViewById(R.id.life_count_text)
//결과 모음
resultText = findViewById(R.id.result_text)
//버튼
val startBtn: Button = findViewById(R.id.start_btn)
val answerBtn: Button = findViewById(R.id.answer_btn)
val resetBtn: Button = findViewById(R.id.reset_btn)
//시작 버튼
startBtn.setOnClickListener {
//랜덤 숫자 생성
randomNumber()
}
//정답 버튼
answerBtn.setOnClickListener {
}
//초기화 버튼
resetBtn.setOnClickListener {
}
}//onCreate
//랜덤 숫자 생성
private fun randomNumber() {
//중복 방지 위한 HashSet
val set: HashSet<Int> = HashSet()
//set 담는 List
val list: ArrayList<Int> = ArrayList()
//숫자 3개 담을 때까지 반복
while (set.size < 3){
//랜덤 숫자 1 ~ 9 생성
val randomValue = Random.nextInt(8) + 1
//담기
set.add(randomValue)
}
//list 담기
list.addAll(set)
//순서 섞기
list.shuffle()
//배열에 숫자 담기
for((index, number: Int) in list.withIndex()){
comNumbers[index] = number
}
//정답 체크 텍스트에 보여주기
responseText.text = "${comNumbers[0]}, ${comNumbers[1]}, ${comNumbers[2]} "
}
}
2022.08.26 - [안드로이드] - [안드로이드 코틀린] 텍스트뷰 TextView 클릭 시 효과(ripple)주는 방법
2022.08.25 - [안드로이드] - [안드로이드 코틀린] 동적 메뉴(ActionMode) 만드는 방법
2022.08.24 - [안드로이드] - [안드로이드 코틀린 ] 컨텍스트메뉴(ContextMenu) 바탕화면 변경하는 방법
[안드로이드 코틀린] 숫자 맞추기 게임 Up&Down 만드는 방법 (0) | 2022.09.01 |
---|---|
[안드로이드 코틀린] 야구 게임 만드는 방법 part3 - 기능 구현 (0) | 2022.08.31 |
[안드로이드 코틀린] 야구 게임 만드는 방법 part1 - 화면 구성 (0) | 2022.08.29 |
[안드로이드 코틀린] 텍스트뷰 TextView 클릭 시 효과(ripple)주는 방법 (0) | 2022.08.26 |
[안드로이드 코틀린] 동적 메뉴(ActionMode) 만드는 방법 (2) | 2022.08.25 |
댓글 영역