import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.ImageView
import android.widget.TextView
import kotlin.random.Random
class MainActivity : AppCompatActivity() {
lateinit var diceImage: ImageView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val rollButton: Button = findViewById(R.id.Roll_Button)
rollButton.text = "Let's Roll"
rollButton.setOnClickListener{
rollDice()
}
diceImage = findViewById(R.id.dice_Image)
}
private fun rollDice() {
val dice = Dice(6)
val diceroll = dice.roll()
// val randomInt = Random().nextInt(6) + 1
val drawableResource = when (rollDice) {
1 -> R.drawable.dice_1
2 -> R.drawable.dice_2
3 -> R.drawable.dice_3
4 -> R.drawable.dice_4
5 -> R.drawable.dice_5
else -> R.drawable.dice_6
}
diceImage.setImageResource(drawableResource)
}
}
class Dice(val numSides: Int) {
fun roll(): Int {
return(1..numSides).random()
}
}
My code
compare to
Udacity code
| package com.example.android.diceroller | |
| import android.os.Bundle | |
| import android.widget.Button | |
| import android.widget.ImageView | |
| import androidx.appcompat.app.AppCompatActivity | |
| import java.util.* | |
| class MainActivity : AppCompatActivity() { | |
| lateinit var diceImage: ImageView | |
| override fun onCreate(savedInstanceState: Bundle?) { | |
| super.onCreate(savedInstanceState) | |
| setContentView(R.layout.activity_main) | |
| val rollButton: Button = findViewById(R.id.roll_button) | |
| rollButton.setOnClickListener { | |
| rollDice() | |
| } | |
| diceImage = findViewById(R.id.dice_image) | |
| } | |
| private fun rollDice() { | |
| val randomInt = Random().nextInt(6) + 1 | |
| val drawableResource = when (randomInt) { | |
| 1 -> R.drawable.dice_1 | |
| 2 -> R.drawable.dice_2 | |
| 3 -> R.drawable.dice_3 | |
| 4 -> R.drawable.dice_4 | |
| 5 -> R.drawable.dice_5 | |
| else -> R.drawable.dice_6 | |
| } | |
| diceImage.setImageResource(drawableResource) | |
| } | |
| } |

0 Comments