class BasicPatternActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) button.setOnClickListener(object : View.OnClickListener { override fun onClick(v: View?) { // TODO: ボタンクリック時の処理 } }) }}class Pattern1Activity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) button.setOnClickListener { // TODO: ボタンクリック時の処理 } }}class Pattern2Activity : AppCompatActivity(), View.OnClickListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_pattern2) for (button in listOf(button1, button2, button3)) { button.setOnClickListener(this) } } override fun onClick(v: View?) { if (v is Button) { val message: String = when (v.id) { R.id.button1 -> "button1 clicked!" R.id.button2 -> "button2 clicked!" else -> "button3 clicked!" } Toast.makeText(applicationContext, message, Toast.LENGTH_SHORT).show() } }}class Pattern3Activity : AppCompatActivity() { private val buttonOnClickListener = View.OnClickListener { // TODO: ボタンクリック時の処理 } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) button.setOnClickListener(buttonOnClickListener) }}