private fun receiveAndDisplayData() {
// 1. GET INTENT: Access the Intent that started this Activity
val intent = intent // 'intent' is an Activity property
// 2. EXTRACT DATA: Retrieve each extra with default values
val selectedAnimal = intent.getStringExtra("SELECTED_ANIMAL") ?: "Unknown"
val isGrayscale = intent.getBooleanExtra("IS_GRAYSCALE", false)
val isRotated = intent.getBooleanExtra("IS_ROTATED", false)
val imageResourceId = intent.getIntExtra("IMAGE_RESOURCE_ID", R.drawable.cat_image)
// 3. APPLY IMAGE: Set the received image resource
receivedImageView.setImageResource(imageResourceId)
// 4. APPLY EFFECTS: Recreate the visual state
if (isGrayscale) {
val matrix = ColorMatrix()
matrix.setSaturation(0f)
val filter = ColorMatrixColorFilter(matrix)
receivedImageView.colorFilter = filter
}
if (isRotated) {
receivedImageView.rotation = 45f
}
// 5. UPDATE UI: Provide feedback about received data
updateInfoDisplay(selectedAnimal, isGrayscale, isRotated)
}