// RollDice Example // Source code file: MainActivity.java package it372.ssmith.rolldice; import java.util.ArrayList; import android.os.Bundle; import android.widget.ImageView; import android.widget.LinearLayout; import androidx.activity.EdgeToEdge; import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); EdgeToEdge.enable(this); setContentView(R.layout.activity_main); ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); return insets; }); // Display result of dice roll. LinearLayout layout = findViewById(R.id.main); ImageView imgDie1 = findViewById(R.id.imgDice1); ImageView imgDie2 = findViewById(R.id.imgDice2); layout.setOnClickListener( v -> { ArrayList dice = RollDice.roll(6); int outcome1 = dice.get(0); switch(outcome1) { case 1: imgDie1.setImageResource(R.drawable.face1); break; case 2: imgDie1.setImageResource(R.drawable.face2); break; case 3: imgDie1.setImageResource(R.drawable.face3); break; case 4: imgDie1.setImageResource(R.drawable.face4); break; case 5: imgDie1.setImageResource(R.drawable.face5); break; case 6: imgDie1.setImageResource(R.drawable.face6); break; } int outcome2 = dice.get(1); switch(outcome2) { case 1: imgDie2.setImageResource(R.drawable.face1); break; case 2: imgDie2.setImageResource(R.drawable.face2); break; case 3: imgDie2.setImageResource(R.drawable.face3); break; case 4: imgDie2.setImageResource(R.drawable.face4); break; case 5: imgDie2.setImageResource(R.drawable.face5); break; case 6: imgDie2.setImageResource(R.drawable.face6); break; } }); } }